我可以为子类指定非严格的方法要求吗?

men*_*nko 1 php oop abstract-class

我有一个基类,我想在其中指定子类必须具有的方法,但不是自己实现它们.但是,子类中的方法可能与基类中的定义具有不同数量的参数.

用抽象方法尝试过这个,php不允许这样做.可能吗?

Gre*_*reg 6

子类的函数可以为签名添加额外的可选参数,而不会导致错误:

abstract class Foo {
  abstract function bar($a);
}

class NewFoo extends Foo {

  function bar($a, $b = null) {
    //do something
  }
}
Run Code Online (Sandbox Code Playgroud)