继承类有自己的构造函数时,就不会去执行父类的构造函数。就是说,构造函数只会自动执行一次
如果你需要父类的构造函数被执行的话,需要在构造函数中显式的执行
$this->父类名();
或
parent::__construct();//php5PHP 不会从派生类的构造函数中自动调用基类的构造函数。恰当地逐次调用上一级的构造函数是用户的责任。
如果你需要父类的构造函数被执行的话,需要在构造函数中显式的执行
$this->父类名();
或
parent::__construct();//php5PHP 不会从派生类的构造函数中自动调用基类的构造函数。恰当地逐次调用上一级的构造函数是用户的责任。
如果父类声明了自己的构造函数,子类中没有显式的构造函数声明的话,那么子类将继承父类的构造函数
如果子类中显式的声明的构造函数,且与父类形式一样的话,那么父类的构造函数将被隐藏,意即不被执行(声明重载的时候是例外)
(如果声明的构造有别于父类的话,会因其语言的不同而有差异)
如果此时想要执行父类构造函数的话,那么必须要显式的调用父类的构造函数
C++,C#提供了base
JAVA提供了super
Delphi Pascal提供了inherited;