现在的位置: 首页 > 综合 > 正文

子类继承中出现的优先级~~

2013年12月09日 ⁄ 综合 ⁄ 共 335字 ⁄ 字号 评论关闭

 <?php
class A{
    public $a=3;
    function f(  ){
        echo $this->a;
    }
}
class B extends A{
    public $a=2;
    function f(  ){
        echo $this->a;
        A::f(  );                  //  这一步调用父类的方法,如果该方法子类已经重载过,则$this和 $a都指向当前子类所定义的值,$a值变成了2,而非A类自己定义的。。。
    }
}
class C extends A{
    
}
$bb=new B(  );
$bb->f(  );
$cc=new C(  );
echo $cc->a;       //  这一步表明B类对A的重载,对C类没影响,C类的$a值还是3。

?>

抱歉!评论已关闭.