PHP中类的继承和用法实例分析

本文实例讲述了PHP中类的继承和用法。分享给大家供大家参考,具体如下:

1、继承关键字 :extends

PHP类的继承,我们可以理解成共享被继承类的内容。PHP中使用extends单一继承的方法,请切忌!(非C++多继承)被继承的类我们叫做父类(基类)继承者成为子类(派生类)。

2、PHP继承的规则

CLASS1------>CLASS2------>CLASS3

依次被继承,class3拥有class1、class2所以功能和属性,避免方法和属性重名。

class  Son{} 继承class root{};

class Son extends Root{};

3、基类方法重载和父类方法访问

因为属于向下继承的原理,基类不能使用派生类里内容,这个时基类的一些方法不能完成我们的一些派生类的功能,我们就可以进行方法重载避免了,新建方法带来的混乱。

方法重载我们也可以理解方法覆盖,在派生类里使用与基类方法重名的方法名称执行重载。

重载时我们需要调用原始基类内容,再增加新内容,我们可以使用

基类名 :: 方法名称。

实例:

<?php
class Root{
  function dayin(){
    return "Root print <br />";
  }
}
 class Son extends Root{
  function dayin(){
    //return $this->dayin()."Son print <br/>";
    return Root::dayin()."Son print <br />";
  }
}
$s=new Son();
echo $s->dayin();
?>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php文件操作总结》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

(0)

相关推荐

  • php类中private属性继承问题分析

    请仔细看这句话 如果父类有私有的属性.那么父类的方法只为父类的私有属性服务. 下面通过一系列列子来加深理解. 这个例子看起来很奇怪,在子类中重新定义了一个属性$sal,系统却返回了父类的属性. 复制代码 代码如下: <? class employee{ private $sal=3000; //protected $sal=3000; public function getSal(){ return $this->sal; } } class Manager extends employee

  • php构造方法中析构方法在继承中的表现

    本文为大家分享了php构造方法之析构方法在继承中的表现,供大家参考,具体内容如下 子类中没有定义构造方法时,会自动调用父类的构造方法.因此实例化子类时,需按照父类的构造方法的形式进行. 修改为: 子类定义了自己的构造方法,则不会自动调用父类的构造方法,但可以手动调用:parent::__construct(); 但通常,在子类,很多时候,在构造方法中,都应该(需要)去调用父类的构造方法以节省代码,增加可读性: 子类中没有定义析构方法时,会自动调用父类的析构方法.子类定义了自己的析构方法,则不会自

  • PHP面向对象三大特点学习(充分理解抽象、封装、继承、多态)

    面象对向的三大特点:封装性.继承性.多态性 首先简单理解一下抽象:我们在前面定义一个类的时候,实际上就是把一类事物共有的属性和行为提取出来,形成一个物理模型(模版),这种研究问题的方法称为抽象一.封装性 封装就是把抽取出来的数据和对数据的操作封装在一起,数据被保护在内部,程序的其他部分只有被授权的操作(方法)才能对数据进行操作. php提供了三种访问控制修饰符 public 表示全局,本类内部,类外部,子类都可以访问 protected 表示受保护的,只有本类或子类可以访问 private 表示

  • php类的扩展和继承用法实例

    本文实例讲述了php类的扩展和继承用法.分享给大家供大家参考.具体如下: <?php class Thread { var $topic; //帖子主题 var $body; //帖子内容 var $date; //帖子发布时间 var $author; //帖子作者 //函数Thread用于初始化变量等 function Thread() { //初始化变量 } //函数Send用于提交新帖子 function Send() { //检测变量的合法性后执行插入操作将变量存储到数据库中 } //

  • php使用类继承解决代码重复的问题

    本文实例讲述了php使用类继承解决代码重复的问题.分享给大家供大家参考.具体分析如下: 继承直白地说就是给一个类建一个或多个子类,要创建子类就必须在类声明中使用 extends 关键字,新类名在前,extends 在中,父类名在后.   下例中,我们创建两个新类,BookProduct 和Cdproduct ,它们都继承自 ShopProduct 类. 复制代码 代码如下: <?php header('Content-type:text/html;charset=utf-8'); // 从这篇开

  • PHP类继承 extends使用介绍

    出来工作这么久了,项目经验倒是不少,但是当问及底层的东西时候,常常是一言不发了.现在项目设计底层的东西越来越少,可以说是真正用到的也就是那么一点,真正核心的东西都已经被框架封装好了.总感觉自己一直进步很慢,关于底层设计思想,常常也只可意会.随着时间的流逝,我们常常会感慨书到用时方恨少了,接下来一定要恶补设计思想了. 今天先来复习一下类继承. 类继承很重要,作为程序员也基本每天都会和他打交道,但是有些东西你真的都知道吗?下面是从官网上面看到的. 一个类可以在声明中用 extends,关键字继承另一

  • php类的定义与继承用法实例

    本文实例讲述了php类的定义与继承用法.分享给大家供大家参考.具体如下: <?php /* * class */ class people { public $name; public $age; function __construct($namec,$agec) { $this->name = $namec; $this->age = $agec; } protected function getmessage() { return "姓名:".$this->

  • php面向对象全攻略 (七) 继承性

    11.类的继承 继承作为面向对象的三个重要特性的一个方面,在面向对象的领域有着极其重要的作用, 好像没听说哪个面向对象的语言不支持继承.继承是PHP5 面向对象程序设计的重要特性之 一,它是指建立一个新的派生类,从一个或多个先前定义的类中继承数据和函数,而且可以 重新定义或加进新数据和函数,从而建立了类的层次或等级.说的简单点就是,继承性是子 类自动共享父类的数据结构和方法的机制,这是类之间的一种关系.在定义和实现一个类的 时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的

  • php构造函数的继承方法

    本文实例讲述了php构造函数的继承方法.分享给大家供大家参考.具体如下: 第一种情况:子类没有定义构造函数时,默认继承.例子: <?php class A{ public $name; function __construct(){ echo $this->name="小强"; } } class B extends A{ } $bb = new B(); ?> 输出结果:小强 第二种情况:子类定义了构造函数,则不会被继承.实例: <?php class A{

  • PHP类的封装与继承详解

    封装 把成员方法和成员属性封装到类中,隐藏属性和方法实现的细节,通过public.protected.private等限定类成员的访问权限,数据被保护在内部,只通过被授权的成员方法才可以操作,尽可能的对成员进行封装. public:方法或者属性在任何作用域下都可以访问到,而且是默认的,如果没有为一个属性或方法指定访问修饰符,它将是public. protected:本类和子类可以访问,外部对象不可以调用. private:只能在本类访问,子类与外部对象都不可能调用.经过private标记的方法或

随机推荐