如何在PHP抽象类中使用自定义子参数实现常用方法?

时间:2017-05-03 08:59:17

标签: php oop abstract

我有一个名为'Car'的抽象PHP类。

abstract class Car
{
    // Extending class must define this method
    abstract protected function getBrand();
    abstract protected function getCars();

    // Common methods
    public function printBrand() {
        print $this->getBrand() . PHP_EOL;
    }

    public function printUrl() {
        print $this->getUrl() . PHP_EOL;
    }
}

这个抽象类实现了一个函数getCars(),但是这个函数对于每个子节点具有基本相同的内容,但具有不同的变量。由于有几十个孩子,这种方法getCars()变得多余。有些孩子可能还需要覆盖getCars()功能。

我应该将getCars()代码复制到抽象类并用$this->getVar()替换变量吗?或者这不是好习惯吗?提前谢谢。

编辑:如果这是可行的方法,某些特定的孩子可以覆盖这个抽象函数吗?

0 个答案:

没有答案