M G*_*ane 4 php oop methods visibility final
在 PHPPrivate和FinalPHP之间存在混淆。
例如我有 3 个班级:
我的理解:
我的问题是:
使用 private 后,我们可以实现像 final 这样的功能,那么为什么我们使用 final?
我问这个问题只是为了我自己的澄清。
为了清楚起见,关键字final不必对方法的可见性做任何事情。方法的可见性由关键字定义:public,protected和private。
final 关键字定义了当另一个类可以访问该方法时,另一个类是否可以覆盖该方法(如果一个方法是 final 则它不能被另一个类覆盖)。否则它甚至无法访问该方法,因此它既不能使用/调用该方法也不能覆盖它。
此外,只有方法可以是最终的,它不能与属性一起使用。
A、B 和 C 是正确的,正如我上面所说,关键字 final 与可见性无关,因此 D 不正确。
有关更多信息,请参阅相应的手册页: