抽象私有函数
2022-08-30 13:37:28
下面的代码会让 PHP 不高兴 customMethod() 是私有的。为什么会这样?可见性是否取决于声明内容的位置而不是定义位置?
如果我想使 customMethod 仅对 Template 类中的样板代码可见,并防止它被重写,我是否可以让它受到保护并且是最终的?
模板.php:
abstract class Template() {
abstract private function customMethod();
public function commonMethod() {
$this->customMethod();
}
}
自定义A.php:
class CustomA extends Template {
private function customMethod() {
blah...
}
}
主要.php
...
$object = new CustomA();
$object->commonMethod();
..