我*需要*执行`parent::_construct()`吗?
Do I *need* to execute `parent::_construct()`?
我有一个 class A
,有一堆 class 延伸自 A
(例如 AA
、AB
, AC
, AD
).这些 "sub-classes" 都是从 A
的 __contruct 方法中调用的。
在 PhpStorm 中,例如AA
我收到关于 __construct
的警告:"Missing parent constructor call"。但是,添加 parent:__contruct
显然会导致循环,其中 classes 继续初始化
我可以安全地忽略(并禁用)这个警告吗,或者我正在做的事情是不好的做法吗?
我倾向于说你不应该从父 class 的构造函数中实例化子classes。
我建议更像:
class A {
public static function generate() {
// current "constructor" code here
}
}
可以包含 new A
,然后将 new AA
附加到该实例,这将避免 "loop".
我有一个 class A
,有一堆 class 延伸自 A
(例如 AA
、AB
, AC
, AD
).这些 "sub-classes" 都是从 A
的 __contruct 方法中调用的。
在 PhpStorm 中,例如AA
我收到关于 __construct
的警告:"Missing parent constructor call"。但是,添加 parent:__contruct
显然会导致循环,其中 classes 继续初始化
我可以安全地忽略(并禁用)这个警告吗,或者我正在做的事情是不好的做法吗?
我倾向于说你不应该从父 class 的构造函数中实例化子classes。
我建议更像:
class A {
public static function generate() {
// current "constructor" code here
}
}
可以包含 new A
,然后将 new AA
附加到该实例,这将避免 "loop".