最模板 - 外贸网站建设,外贸网站模板

最模板

当前位置: 首页 > 建站教程 > php教程 >

PHP 面向对象 继承

时间:2014-06-09 16:40来源: 作者: 点击:
继承关键词:extends class A{ private $n ; protect $m ; public function GetName( $k ){ return strtolower ( $k ); } } class B extends A{ public function GetName( $k ){ return B类返回 . $k ; } } 1.这里B类继承A类,如果A类有构造函数而B里
继承关键词:extends
  1. class A{  
  2. private $n;  
  3. protect $m;  
  4. public function GetName($k){  
  5. return strtolower($k);  
  6. }  
  7. }  
  8. class B extends A{  
  9. public function GetName($k){  
  10. return "B类返回".$k;  
  11. }  

1.这里B类继承A类,如果A类有构造函数而B里没有构造函数,创建B类对象时将调用A类的构造函数,如果B类有自己的构造函数则调用自己的构造函数.

2.继承只适用于继承父类里 protect 和public 所限制的访问修饰符,对于private 修饰符不被继承.

3.子类可以重载父类里的属性,方法,当B类重载了 GetName 方法后,
$b=new B();     $b->GetName("张三") 将优先调用B类中重载的GetName()方法,如果想在子类对象中调用父类的方法时,可以使用 A::GetName("张三")  即可(前面加上 父类名::)

4.当函数前面申明 final 关键字时,子类将不能对此函数进行重载.

5.当类前面加申明 final ,此类将不能被子类继承.

6.PHP不支持多重继承,也就是说一个类只能有唯一的一个父类

7.类的对象可以使用clone 关键字克隆一个一模一样的引用副本到本地(有相同的属性和方法)
如果在克隆的时候不希望得到被克隆类相同的属性或者方法,需要在被克隆类里实现 __clone() 方法,该方法就像构造函数一样,是在被克隆的时候调用的,里面可以定义自己在类被克隆时要初始化的属性及方法.

(责任编辑:admin)
------分隔线----------------------------
栏目列表
推荐内容