ファイナルとは、その名の通り「最後の、最後の」という意味です。
最終的に変更されたメソッドは、「最後のメソッド」、つまりサブクラスによってオーバーライドできないメソッドを取得できます。
class NbaPlayer{ final public function eat($food){ echo "food is ".$food; }}
最終的に変更されたクラスは、継承できないクラスである「最終クラス」を取得できます。
final class NbaPlayer(){}
例:
<?php//子类的方法名和父类的方法名相同时,会重写(覆盖)父类的方法//对于不想被任何子类重写(修改)的方法,可以在class之前添加final关键字//对于不想被子类重写(修改)的方法,可以在方法定义的前面添加final关键字class BaseClass{ public function test($temp="123"){ echo "BaseClass::test called".$temp."\n"; } final public function test1(){ echo "BaseClass::test1 called\n"; }}class ChildClass extends BaseClass{ public function test($temp="123"){ echo "ChildClass::test called "; }}$obj = new ChildClass();$obj->test("456");
著作権表示: この記事はブロガーが書いたもの 元の記事をブロガーの許可なく転載することはできません。