>  기사  >  백엔드 개발  >  子类可以有一个和父类同样名字的方法吗?

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

WBOY
WBOY원래의
2016-06-06 20:17:272715검색

这个代码里面 子类有一个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으로 문의하세요.