例如,我不想制作一些“基础”类,并尽可能地扩展它,然后制作具有所有扩展方法的Super类。
class Base {
private $name;
public function __construct($name) {
$this->name=$name;
}
public function getName() {
return $this->name;
}
}
class ExtendA extends Base {
private $surName;
public function __construct($surName) {
$this->surName=$surName;
}
public function getSurName() {
return $this->surName;
}
}
class ExtendB extends Base {
private $lastName;
public function __construct($lastName) {
$this->lastName=$lastName;
}
public function getLastName() {
return $this->lastName;
}
}
class Maximal ??? {
.... ???
}
$object=new Maximal('name','surname','lastName');
$object->getName(); // name from Base Class
$object->getSurName(); // surname from ExtendA class
$object->getLastName(); // lastname from ExtendB class
如果我们遵循逐行继承A,B ext A,C ext B.这已经成为可能。 但是,如果我不平行或延伸的顺序怎么办? 也许我需要使用自动加载?
答案 0 :(得分:1)
@Marc B
PHP does not support multiple inheritance.
但真正的解决方案是使用PSR-4创建代码 - 就像样式并使用自动加载(作曲家或引导程式)。
然后我们可以创造很多消耗性员工。
此外,继承可以“直观地”更改为静态方法。