首頁  >  文章  >  後端開發  >  PHP後期靜態綁定實例分享

PHP後期靜態綁定實例分享

小云云
小云云原創
2018-03-13 11:47:371118瀏覽

1.後期靜態綁定工作原理是儲存了在上一個「非轉送呼叫」(non-forwarding call)的類別名稱。當進行靜態方法呼叫時,該類別名稱即為明確指定的那個(通常在 :: 運算子左側部分);當進行非靜態方法呼叫時,即為該物件所屬的類別。此功能從語言內部角度考慮被命名為「後期靜態綁定」。 「後期綁定」的意思是說,static:: 不再被解析為定義當前方法所在的類,而是在實際運行時計算的。

2.測試範例:

class A{    public function run()    
{        static::test(); //后期静态绑定        
self::test(); //不是后期静态绑定    }    
public static function test()    
{        echo &#39;A Class<br>&#39;;    
}}class B extends A
{    public static function test()   
{        echo &#39;B Class<br>&#39;;    }}
$a = new B();$a->run();
//输出结果
//B Class
//A Class

相關推薦:

Laravel中一個後期靜態綁定詳細說明

PHP物件導向之後期靜態綁定功能介紹

php後期靜態綁定

以上是PHP後期靜態綁定實例分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn