ホームページ  >  記事  >  バックエンド開発  >  php--最後のキーワード

php--最後のキーワード

伊谢尔伦
伊谢尔伦オリジナル
2016-11-23 13:56:40986ブラウズ

PHP 5 では、新しい Final キーワードが追加されています。親クラスのメソッドがfinalと宣言されている場合、子クラスはそのメソッドをオーバーライドできません。クラスがfinalと宣言されている場合、そのクラスを継承することはできません。

例 #1 最後のメソッドの例

class BaseClass
{
    public function test(){
        echo "BaseClass::test() called<br>";
    }
    final public function moreTesting(){
        echo "BaseClass::moreTesting() called<br>";
    }
}
class ChildClass extends BaseClass
{
    public function moreTesting(){
        echo "BaseClass::moreTeing called<br>";
    }
}

例 #2 最後のクラスの例

final class BaseClass{
    public function test(){
        echo "BaseClass::test() called\n";
    }
    //这里无论你是否将方法声明为final,都没有关系
    final public function moreTesting(){
        echo "BaseClass::moreTesting() called\n";
    }
}
class ChildClass extends BaseClass{}
//产生Fatal Error:Class ChildClass may not inherit from final class (BaseClass)

注: プロパティを Final として定義することはできません。final として定義できるのはクラスとメソッドのみです。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。