PHP类继承 extends使用介绍 |
本文标签:继承,extends 出来工作这么久了,项目经验倒是不少,但是当问及底层的东西时候,常常是一言不发了 。现在项目设计底层的东西越来越少,可以说是真正用到的也就是那么一点,真正核心的东西都已经被框架封装好了 。总感觉自己一直进步很慢,关于底层设计思想,常常也只可意会 。随着时间的流逝,我们常常会感慨书到用时方恨少了,接下来一定要恶补设计思想了 。 类继承很重要,作为程序员也基本每天都会和他打交道,但是有些东西你真的都知道吗?下面是从官网上面看到的 。 Final 关键字 PHP 5新增的一个关键字,如果父类中的方法被声明为 final,则子类无法覆盖该方法 。同样如果一个类被声明为 final,则不能被继承 。 范围解析操作符(::) 范围解析操作符或者更简单地说是一对冒号,可以用于访问静态成员,类常量,还可以用于覆盖类中的属性和方法 。 当一个子类覆盖其父类中的方法时,PHP 不会调用父类中已被覆盖的方法 。是否调用父类的方法取决于子类 。这种机制也作用于构造函数和析构函数,重载以及魔术方法 。 下面是调用父类的方法的一个示例: 复制代码 代码如下: <?php class MyClass { protected function myFunc() { echo "MyClass::myFunc()\n"; } } class OtherClass extends MyClass $class = new OtherClass(); 当在类定义之外引用到这些项目时,要使用类名 。 复制代码 代码如下: <?php class cA class cB extends cA class cC extends cA class cD extends cA cB::setOther(cB); // cB::method()! /** ?> PHP extends类继承代码示例: 复制代码 代码如下: < ?php class a{ public $x; public $y; function __construct($x=0,$y=0){ $this->x=$x; $this->y=$y; } function getx(){ return $this->x; } function gety(){ return $this->y; } function __destruct(){} } class a2 extends a{} /*extends是一个继承函数*/ $b2=new a2(10,10); echo $b2->getx()."<br>"; echo $b2->gety(); ?> 以上介绍的内容就是PHP extends类继承的全部实现步骤 。 |