【问题标题】:php check if abstract method existsphp 检查抽象方法是否存在
【发布时间】:2010-10-06 04:31:44
【问题描述】:
abstract class A{
   abstract test();
   function __construct (){
       //check if test method exists on B//
   }
}

class B extends A{

}

new B();

我的问题是......有没有办法检查test 方法是否存在于class B 上? 这样我就可以避免致命错误?

希望这是有道理的。

【问题讨论】:

  • 您为什么要这样做?使用抽象方法的意义在于提醒您扩展 A 的类必须实现它(除非它们不是“可实例化的”)
  • 好吧,可以说我忘记了它是抽象的......然后错误可以向公众展示......所以我可以提出一个更用户友好的不同错误。

标签: php class abstract


【解决方案1】:
method_exists(get_called_class(),'test');

以上解决了我的问题:)希望它可以帮助那里的人。

【讨论】:

    猜你喜欢
    • 2012-04-14
    • 1970-01-01
    • 2011-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-09
    • 2011-05-24
    相关资源
    最近更新 更多