首頁  >  文章  >  後端開發  >  子类可以有一个和父类同样名字的方法吗?

子类可以有一个和父类同样名字的方法吗?

WBOY
WBOY原創
2016-06-06 20:17:272754瀏覽

这个代码里面 子类有一个show方法 父类也有一个show方法 然后子类再去继承父类 为什么不会报错?子类的show方法是把父类的show替代掉了吗还是怎么了?他们内部发生了什么?

<code>class father{
   public function show(){
        echo "aaa";
   }
 }

class son extends human{
   public function show(){
        echo "bbb";
   }
}

$c=new son();
$c->show();</code>

回复内容:

这个代码里面 子类有一个show方法 父类也有一个show方法 然后子类再去继承父类 为什么不会报错?子类的show方法是把父类的show替代掉了吗还是怎么了?他们内部发生了什么?

<code>class father{
   public function show(){
        echo "aaa";
   }
 }

class son extends human{
   public function show(){
        echo "bbb";
   }
}

$c=new son();
$c->show();</code>

这是继承的特性,子类可以覆盖父类的方法。除非父类的方法定义了final关键字。

子类中也可以用parent::来引用父类中的方法。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn