激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - PHP接口多繼承及tarits實現多繼承效果的方法

PHP接口多繼承及tarits實現多繼承效果的方法

2019-10-26 15:36谷文杰 PHP教程

這篇文章主要介紹了PHP接口多繼承及tarits實現多繼承效果的方法,結合實例形式分析了php基于接口的多繼承及PHP5.4中引入的tarits實現多繼承功能簡單操作技巧,需要的朋友可以參考下

本文實例講述了PHP接口多繼承及tarits實現多繼承效果的方法。分享給大家供大家參考,具體如下:

接口多繼承

在PHP的面向對象中,接口可以繼承接口。PHP類只能繼承一個父類(單繼承),但是接口可以實現多繼承,可以繼承一個或者多個接口。當然接口的繼承也是和類的繼承一樣使用extends關鍵字,要多個繼承的話只要用逗號把繼承的接口隔開即可。

需要注意的是當你接口繼承其它接口時候,直接繼承父接口的靜態常量屬性和抽象方法,所以類實現接口時必須實現所有相關的抽象方法。

下面舉例說明:

1.繼承單接口

  1. <?php 
  2. interface testA{ 
  3.   function echostr(); 
  4. interface testB extends testA{ 
  5.   function dancing($name); 
  6. class testC implements testB{ 
  7.   function echostr(){ 
  8.     echo "接口繼承,要實現所有相關抽象方法!"
  9.     echo "<br>"
  10.   } 
  11.   function dancing($name){ 
  12.     echo $name."正在跳舞!"
  13.   } 
  14. $demo=new testC(); 
  15. $demo->echostr(); 
  16. $demo->dancing("模特"); 
  17. //運行結果 
  18. /** 
  19.   接口繼承,要實現所有相關抽象方法 
  20.   模特正在跳舞! 
  21. **/ 

2.繼承多接口

  1. <?php 
  2. interface testA{ 
  3.   function echostr(); 
  4. interface testB{ 
  5.   function dancing($name); 
  6. interface testC extends testA,testB{ 
  7.   function singing($nickname); 
  8. class testD implements testC{ 
  9.   function echostr(){ 
  10.     echo "接口繼承,要實現父接口所有相關方法!"
  11.     echo "<br />"
  12.   } 
  13.   function dancing($name){ 
  14.     echo $name."正在跳舞!"
  15.     echo "<br />"
  16.   } 
  17.   function singing($nickname){ 
  18.     echo $nickname."正在唱歌!"
  19.   } 
  20. $demo=new testD(); 
  21. $demo->echostr(); 
  22. $demo->dancing("模特"); 
  23. $demo->singing("周杰倫"); 
  24. //運行結果 
  25. /** 
  26.   接口繼承,要實現父接口所有相關方法! 
  27.   模特正在跳舞! 
  28.   周杰倫正在唱歌! 
  29. **/ 

tarits多繼承

多繼承里一個類可以同時繼承多個父類,組合多個父類的功能 C++ 里就是使用這種模型來增強集成的靈活性的,但多重繼承過于靈活,并且會帶來“菱形繼承”,故使用起來有不少困難,模型變的復雜起來,現在大多數語言都放棄了多重繼承這一模型。

但有的場合想用多繼承,但PHP又沒多繼承,于是就發明了這樣的一個東西。

Traits可以理解為一組能被不同的類都能調用到的方法集合,但Traits不是類!不能被實例化。先來例子看下語法:

  1. <?php 
  2. trait myTrait{ 
  3.   function traitMethod1(){} 
  4.   function traitMethod2(){} 
  5. //然后是調用這個traits,語法為: 
  6. class myClass{ 
  7.   use myTrait; 
  8. //這樣就可以通過use myTraits,調用Traits中的方法了,比如: 
  9. $obj = new myClass(); 
  10. $obj-> traitMethod1 (); 
  11. $obj-> traitMethod2 ();  

具體的介紹跟使用可以看官方的介紹。

希望本文所述對大家PHP程序設計有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 成人午夜亚洲 | 久久久久亚洲美女啪啪 | caoporn国产一区二区 | 性猛交ⅹxxx乱巴西 asian超清日本肉体pics | 一级小毛片| 红杏亚洲影院一区二区三区 | 激情久久一区二区 | 一区二区三区欧洲 | 毛片网站视频 | 一本在线高清码电影 | 91福利影视 | 免费色片| 黄色片快播 | 最新av免费网址 | 欧美一级黄色片免费观看 | 91看片淫黄大片欧美看国产片 | 韩国草草影院 | 欧美一级淫片免费视频1 | 久久久www成人免费毛片 | 欧美成人精品一区二区 | 黄色大片免费网站 | 史上最强炼体老祖动漫在线观看 | 毛片免费视频 | 久久69精品久久久久久国产越南 | 日日爱影院 | 看国产一级毛片 | 国产精品成aⅴ人片在线观看 | 国产一级桃视频播放 | 中日韩乱码一二新区 | 一本色道久久99精品综合蜜臀 | 暴力强行进如hdxxx | 欧美黄一级 | 大奶一级片 | 娇喘在线| 中国一级毛片在线播放 | 精品免费久久 | 特大黑人videos与另类娇小 | 麻豆一二区 | 竹内纱里奈和大战黑人 | 永久免费av在线 | 成人在线免费观看视频 |