我有一个抽象方法'run'。扩展此实现的子类运行并返回bool作为输出。 有没有办法可以在抽象类中获取run(true / false)方法的状态。
我想要这个,因为我正在尝试添加一些统计信息,因为执行run方法失败/传递了多少个类。我已经有很多课程扩展这个,不想在这些课程中添加任何内容并免费获得这些统计数据。
abstract class parent {
// I need the status of the run method in here
public abstract function run();
}
class child extends parent {
public function run() {
if (implementation) {
return true;
} else {
return false;
}
}
}
帮助表示感谢。
答案 0 :(得分:1)
在父级中定义一个非抽象方法,该方法调用抽象方法并获得结果。
abstract class parent {
private $run_result;
public function run() {
$this->run_result = $this->run_internal();
}
abstract protected function run_internal();
}
class child extends parent {
protected function run_internal() {
if (implementation) {
return true;
} else {
return false;
}
}
}