基类:
class A {
public x;
public y;
public function __construct {
$this->x = new X();
$this->y = new Y();
}
}
类X
:
class X extends A {
public function __construct {}
public function job() {
echo 'x working!';
}
}
类Y
:
class Y extends A {
public function __construct {}
public function job() {
var_dump($this->x); // NULL, Why???
$this->x->job();
}
}
问题:当我x->job()
从类内部调用时Y
,我完全无法访问X
已经实例化的对象,并var_dump
显示它是null
.
有什么想法有什么问题吗?
谢谢!:)
更新:
如果我parent::__construct();
在子类的__construct()
方法中使用,那么它将生成Fatal Error: maximum function nesting level of '100' reached, aborting!
. 这就是我添加那些空__construct()
方法的原因。任何想法再次如何解决?
我在源代码上也有这个:
$base = new A();
那么,构造函数应该已经运行了,对吧?