我有一个班级A
,其中包含一些从A
延伸的课程(例如AA
,AB
,AC
,{{1} })。这些"子类"都来自AD
的__contruct方法。
在例如PhpStorm中A
我在AA
上发出警告:"缺少父母构造函数调用"。然而,添加__construct
显然会导致一个循环,其中类继续初始化
我可以安全地忽略(并禁用)此警告,或者我正在做什么是不好的做法?
答案 0 :(得分:5)
我倾向于说你不应该从父类的构造函数中实例化子类。
我会建议更像:
class A {
public static function generate() {
// current "constructor" code here
}
}
可以包含new A
然后将new AA
附加到该实例,这样可以避免"循环"。