我有一个子类需要返回其父类返回类型的子类。我相信这被称为协变返回类型。我想知道从父类转换为子类的最简单方法。
class A {
}
class B extends A {
function bar() {
}
}
class Car {
function foo() {
return new A();
}
}
class BrokenCar extends Car {
function foo() {
$a = parent::foo();
//What is the cleanest way to convert $a to type B ?
}
}