起初我很困惑为什么构造函数中的两个方法调用都能正常工作,但现在我想我明白了。扩展类继承父类的方法,就好像它们是在类本身中声明的一样,而且这些方法存在于父类中,所以两者都应该可以工作。
现在我想知道是否有一种更好的方法(即最佳实践)来调用这个方法(通过 parent或 this) ,以及这些方法是否真的是相同的方法来执行相同的代码,或者在使用一种方法而不是另一种方法时是否有任何警告。
抱歉,我可能想太多了。
abstract class Animal {
function get_species() {
echo "test";
}
}
class Dog extends Animal {
function __construct(){
$this->get_species();
parent::get_species();
}
}
$spike = new Dog;