這篇文章主要介紹了PHP介面繼承及介面多繼承原理與實作方法,簡單描述了介面繼承與多介面繼承的概念、原理,並結合實例形式給出了php介面繼承的具體實作與使用等操作技巧,需要的朋友可以參考下
本文實例講述了PHP介面繼承及介面多繼承原理與實作方法。分享給大家供大家參考,具體如下:
在PHP的介面中,介面可以繼承介面。雖然PHP類別只能繼承一個父類別(單繼承),但是介面和類別不同,介面可以實現多繼承,可以繼承一個或多個介面。當然介面的繼承也是使用extends關鍵字,要多個繼承的話只要用逗號把繼承的介面隔開即可。
要注意的是當你介面繼承其它介面時候,直接繼承父介面的靜態常數屬性和抽象方法,所以類別實作介面時必須實作所有相關的抽象方法。
現在你對PHP介面的繼承有所了解了吧,下面的範例可供參考,程式碼如下:
<?php interface father{ function shuchu(); } interface fam extends father{ function cook($name); } class test implements fam{ function shuchu(){ echo "接口继承,要实现两个抽象方法"; echo "<br>"; } function cook($name){ echo "平时经常做饭的人是:".$name; } } $t=new test(); $t->shuchu(); $t->cook("妈妈"); ?>
程式碼運行結果如下:
接口继承,要实现两个抽象方法 平时经常做饭的人是:妈妈
上面的範例是接口繼承了一個接口,所以在test類別實作fam介面的時候要實例兩個抽象方法,就是把接口的子類別和父類別的抽象方法都實例。
下面來看一個介面多繼承的範例,程式碼如下:
<?php interface father{ function shuchu(); } interface mother{ function dayin($my); } interface fam extends father,mother{ function cook($name); } class test implements fam{ function dayin($my){ echo "我的名字是:".$my; echo "<br>"; } function shuchu(){ echo "接口继承,要实现两个抽象方法"; echo "<br>"; } function cook($name){ echo "平时经常做饭的人是:".$name; } } $t=new test(); $t->shuchu(); $t->dayin("小强"); $t->cook("妈妈"); ?>
範例運行結果:
接口继承,要实现两个抽象方法 我的名字是:小强 平时经常做饭的人是:妈妈
這段程式碼由於接口繼承了兩個接口,所有實例時要把這三個抽象類別的所有抽象方法都實例,總共有三個。看完這兩個例子,你應該對介面的繼承熟悉了吧,其實就一個單繼承和多繼承,只要實作了所有相關的抽象方法就可以了。
以上是php實作介面繼承以及介面多繼承原理的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!