我有这个超类:
Class BaseController{
public function __construct(){
$this->view = new BaseView();
}
}
我有 3 个扩展它的类。如何运行基类的构造函数,而不必放入parent::__construct();
子类中的每个构造函数?
我有这个超类:
Class BaseController{
public function __construct(){
$this->view = new BaseView();
}
}
我有 3 个扩展它的类。如何运行基类的构造函数,而不必放入parent::__construct();
子类中的每个构造函数?
如 php.net 文档所述,如果您需要子构造函数,则这是不可能的。
http://php.net/manual/en/language.oop5.decon.php
注意:如果子类定义了构造函数,则不会隐式调用父构造函数。为了运行父构造函数,需要在子构造函数中调用 parent::__construct()。如果子类没有定义构造函数,那么它可以像普通类方法一样从父类继承(如果它没有声明为私有)。