假设我在 PHP 中有一个父类,如下所示:
class A {
private $property;
public static function factory($arg) {
$object = new A();
$object->property = $arg;
return $object;
}
}
我想以这种方式扩展它:
class B extends A {
public static function factory() {
return parent::factory('constant');
}
}
当我这样做时,B::factory()
我得到一个类型的对象A
。如果我想要一个类型的对象B
怎么办?我无法更改 class 代码中的任何内容A
。