强制扩展具有主体的方法

时间:2018-08-21 18:33:43

标签: php class methods

哪种方法是在具有主体的类中扩展方法的最佳方法?

class one
{
     public function methOne($var)
     {
         // Something here
     }

     public function methTwo($var)
     {
         // Something here
     }
}


class two extends one
{
    public function methTwo($var, $varTwo)
    {
        if($varTwo === true)
            parent::methTwo($var);
        else
             return 100;

    }
}

在上面的示例中,考虑到父methTwo具有可以在某些情况下重用的逻辑,我是否可以强制第二类扩展methTwo? 我本来想抽象类和方法,但不能抽象出不为空的方法。

1 个答案:

答案 0 :(得分:2)

您可以在基类中创建方法protected。如果子类没有覆盖它,则调用者将收到错误消息,因为他们无法访问该名称。但是子类可以从其重写方法调用它,因为子类可以访问受保护的名称。