首頁  >  文章  >  後端開發  >  php怎麼實作多繼承

php怎麼實作多繼承

(*-*)浩
(*-*)浩原創
2019-09-04 15:11:223216瀏覽

php實作多重繼承-trait語法

php怎麼實作多繼承

#自PHP 5.4.0起,PHP實作了一種程式碼復用的方法,稱為trait。

Trait是為類似PHP的單一繼承語言而準備的一種程式碼重複使用機制。 Trait為了減少單繼承語言的限制,使開發人員能夠自由地在不同層次結構內獨立的類別中重複使用method。 Trait 和 Class 組合的語意定義了一種減少複雜性的方式,避免傳統多繼承和 Mixin 類別相關典型問題。

Trait 和 Class 相似,但只是旨在以細粒度和一致的方式來組合功能。無法透過 trait 自身來實例化。它為傳統繼承增加了水平特性的組合;也就是說,應用的幾個 Class 之間不需要繼承。 (推薦學習:PHP影片教學

從基底類別繼承的成員會被 trait 插入的成員所覆寫。優先順序是來自目前類別的成員覆寫了 trait 的方法,而 trait 則覆寫了被繼承的方法。

以下為程式碼:

trait traitTestOne{<br/>    public function test(){<br/>        echo "This is trait one <br/>";<br/>    }<br/>    public function testOne(){<br/>        echo "one <br/>";<br/>    }<br/>}<br/> <br/>trait traitTestTwo{<br/>//  public function test(){<br/>//      echo "This is trait two";<br/>//  }<br/>    public function testTwo(){<br/>        echo "two <br/>";<br/>    }<br/>}<br/> <br/>class basicTest{<br/>    public function test(){<br/>        echo "hello world\n";<br/>    }<br/>}<br/>class myCode extends basicTest{<br/>    use traitTestOne,traitTestTwo;<br/>}<br/> <br/>$test = new mycode();<br/>$test->test();<br/>$test->testOne();<br/>$test->testTwo();<br/>

輸出為:   

This is trait one<br/>one<br/>two<br/>

以上是php怎麼實作多繼承的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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