亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

php 適配器模式的學習筆記

2024-09-04 11:43:50
字體:
來源:轉載
供稿:網友

適配器模式許多和php程序員都沒有碰到關于適配器的應用了,這里小編整理了兩個關于適配器的使用例子,下面我們就一起來看看吧,希望各位有幫助。

【目的】:將一個類的接口轉換成客戶希望的另外一個接口,Adapter模式使得原來由于接口不兼容而不能一起工作的那此類可以一起工作

【主要角色】

目標(Target)角色:定義客戶端使用的與特定領域相關的接口,這也就是我們所期待得到的

源(Adaptee)角色:需要進行適配的接口

適配器(Adapter)角色:對Adaptee的接口與Target接口進行適配;適配器是本模式的核心,適配器把源接口轉換成目標接口,此角色為具體類

【適用性】

1、你想使用一個已經存在的類,而它的接口不符合你的需求

2、你想創建一個可以復用的類,該類可以與其他不相關的類或不可預見的類協同工作

3、你想使用一個已經存在的子類,但是不可能對每一個都進行子類化以匹配它們的接口。對象適配器可以適配它的父類接口(僅限于對象適配器)

  1. //目標角色   
  2. interface Target {   
  3.     public function simpleMethod1();   
  4.     public function simpleMethod2();   
  5. }   
  6.    
  7. //源角色   
  8. class Adaptee {   
  9.        
  10.     public function simpleMethod1(){   
  11.         echo 'Adapter simpleMethod1'."<br>";   
  12.     }   
  13. }   
  14.    
  15. //類適配器角色   
  16. class Adapter implements Target {   
  17.     private $adaptee;   
  18.        
  19.        
  20.     function __construct(Adaptee $adaptee) {   
  21.         $this->adaptee = $adaptee;    
  22.     }   
  23.        
  24.     //委派調用Adaptee的sampleMethod1方法   
  25.     public function simpleMethod1(){   
  26.         echo $this->adaptee->simpleMethod1();   
  27.     }   
  28.        
  29.     public function simpleMethod2(){   
  30.         echo 'Adapter simpleMethod2'."<br>";      
  31.     }    
  32.        
  33. }   
  34.    
  35. //客戶端   
  36. class Client {   
  37.        
  38.     public static function main() {   
  39.         $adaptee = new Adaptee();   
  40.         $adapter = new Adapter($adaptee);   
  41.         $adapter->simpleMethod1();   
  42.         $adapter->simpleMethod2();    
  43.     }   //Vevb.com 
  44. }   
  45.    
  46. Client::main(); 

【運行結果】

Adapter simpleMethod1

Adapter simpleMethod2

例子2:生活中最常見到的足球換人機制:

  1. <?php 
  2. /** 
  3. * Created by PhpStorm. 
  4. */ 
  5. //-------------抽象接口--------------- 
  6. /**抽象運動員 
  7. * Interface IPlayer 
  8. */ 
  9. interface SoccerPlayer 
  10. function Attack(); 
  11. function Defense(); 
  12.  
  13. /**前鋒 
  14. * Class Forward 
  15. */ 
  16. class Forward implements SoccerPlayer 
  17.  
  18. function Attack() 
  19. echo "前鋒攻擊<br/>"
  20.  
  21. function Defense() 
  22. echo "前鋒防御<br/>"
  23.  
  24. /**中鋒 
  25. * Class Center 
  26. */ 
  27. class Center implements SoccerPlayer 
  28.  
  29. function Attack() 
  30. echo "中鋒攻擊<br/>"
  31.  
  32. function Defense() 
  33. echo "中鋒防御<br/>"
  34.  
  35. //--------------待適配對象----------- 
  36. /**梅西 剛進入罷賽的運動員 
  37. * Class Yaoming 
  38. */ 
  39. class Messi 
  40. function 進攻() 
  41. echo "梅西進攻<br/>"
  42.  
  43. function 防御() 
  44. echo "梅西防御<br/>"
  45.  
  46. //------------適配器-------------- 
  47. /**適配器 
  48. * Class Adapter 
  49. */ 
  50. class Adapter implements SoccerPlayer 
  51. private $_player
  52. //Vevb.com 
  53. function __construct() 
  54. $this->_player=new Messi(); 
  55.  
  56. function Attack() 
  57. $this->_player->進攻(); 
  58.  
  59. function Defense() 
  60. $this->_player->防御(); 
  61. //測試如下: 
  62. $player1=new Forward(); 
  63.  
  64. echo "前鋒上場:<br/>"
  65. $player1->Attack(); 
  66. $player1->Defense(); 
  67.  
  68. echo "<hr/><br/>"
  69.  
  70. echo "梅西上場:<br/>"
  71. $Messi=new Adapter(); 
  72. $Messi->Attack(); 
  73. $Messi->Defense(); 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美成人精品一区| 久久精品2019中文字幕| 亚洲图片制服诱惑| 中文字幕日韩免费视频| 91在线免费视频| 成人激情av在线| 欧美日韩在线视频一区二区| 88国产精品欧美一区二区三区| 久久久极品av| 最新国产精品拍自在线播放| 亚洲国产精品视频在线观看| 久久91精品国产91久久跳| 欧美成人精品在线播放| 欧美性极品少妇精品网站| 九九热精品视频| 欧洲午夜精品久久久| 欧美激情一级二级| 欧美在线视频免费| 欧美性xxxx极品hd欧美风情| 欧美黑人性视频| 欧美日韩精品在线播放| 中文字幕无线精品亚洲乱码一区| 色婷婷亚洲mv天堂mv在影片| 午夜精品久久久久久久久久久久久| 综合国产在线观看| 国产精品久久中文| 高清在线视频日韩欧美| 日韩av理论片| 亚州国产精品久久久| 国产精品免费小视频| 国内精品久久久久久中文字幕| 欧美成人在线免费视频| 久久久女人电视剧免费播放下载| 亚洲bt欧美bt日本bt| 国产精品99久久久久久www| 亚洲精品国产品国语在线| 黄色一区二区在线观看| 日韩电影在线观看永久视频免费网站| 国产美女精彩久久| 91成品人片a无限观看| 另类视频在线观看| 亚洲影院污污.| 欧美性精品220| 欧美精品日韩三级| 亚州成人av在线| 国产精品自产拍高潮在线观看| 精品国产欧美成人夜夜嗨| 亚洲一区中文字幕在线观看| 久久精品国产69国产精品亚洲| 91免费国产视频| 96pao国产成视频永久免费| 国产精品久久婷婷六月丁香| 久久这里只有精品99| 欧美成人免费va影院高清| 欧美美女操人视频| 色综合伊人色综合网站| 91网站免费观看| 亚洲综合大片69999| 91在线色戒在线| 色哟哟网站入口亚洲精品| 中文字幕免费国产精品| 欧美亚洲国产视频小说| 日韩最新中文字幕电影免费看| 亚洲欧美另类人妖| 国产z一区二区三区| 亚洲综合视频1区| 亚洲精品黄网在线观看| 日本aⅴ大伊香蕉精品视频| 久久国产精品免费视频| 中文字幕在线看视频国产欧美| 亚洲aaa激情| 欧美日韩国产专区| 精品亚洲永久免费精品| 亚洲国产精品美女| 国产精品91久久久久久| 国产精品日韩av| 中文字幕久久久| 亚洲人成在线一二| 国产成人精品久久久| 久久久久久中文| 国产欧美一区二区三区在线| 在线精品国产成人综合| 久久久国产视频| 26uuu亚洲伊人春色| 日本91av在线播放| 国产精品美女主播| 成人黄色在线播放| 国产精品午夜视频| 欧美日韩亚洲视频一区| 日韩暖暖在线视频| 69久久夜色精品国产7777| 国产精品丝袜久久久久久高清| 欧美精品免费在线| 97超碰色婷婷| 亚洲aⅴ日韩av电影在线观看| 97碰碰碰免费色视频| 成人444kkkk在线观看| 午夜精品久久久久久久久久久久| 91精品国产综合久久香蕉的用户体验| 亚洲精品一区二区三区婷婷月| 欧美日韩亚洲精品内裤| 日本人成精品视频在线| 欧美成人午夜剧场免费观看| 欧美在线视频观看免费网站| 久久视频中文字幕| 九九热这里只有在线精品视| 日韩精品免费在线播放| 久久中国妇女中文字幕| 色哟哟网站入口亚洲精品| www.日韩系列| 欧美裸体男粗大视频在线观看| 欧美寡妇偷汉性猛交| 91精品国产91久久久久久| 亚洲午夜av久久乱码| 久久777国产线看观看精品| 日韩精品免费一线在线观看| 亚洲国产欧美一区| 成人黄色免费在线观看| 亚洲国产精品嫩草影院久久| 欧美国产亚洲精品久久久8v| 欧美成人免费观看| 久久久久这里只有精品| 久久影院模特热| 国产精品视频精品视频| 久久久成人精品视频| 亚洲美女av在线| 中文字幕精品视频| 深夜精品寂寞黄网站在线观看| 97人人爽人人喊人人模波多| 欧美激情a∨在线视频播放| 国产精品久久99久久| 国产一区二区三区18| 久久不射电影网| 国产不卡一区二区在线播放| 国产精品久久久久久久久久东京| 国产综合久久久久久| 亚洲视频自拍偷拍| 欧美日韩在线视频一区二区| 久久久av免费| 精品国产一区二区三区在线观看| 日韩美女免费观看| 欧美极度另类性三渗透| 亚洲精品短视频| 日韩av毛片网| 中文字幕欧美日韩精品| 欧美精品免费在线观看| 福利一区福利二区微拍刺激| 国产欧亚日韩视频| 2020欧美日韩在线视频| 精品亚洲一区二区三区| 日韩欧美在线视频日韩欧美在线视频| 九九久久精品一区| 国产精品三级美女白浆呻吟| 欧美亚洲成人xxx| 97精品伊人久久久大香线蕉| 成人激情视频在线观看| 国产精品户外野外| 欧美高清激情视频| 欧美激情综合色| 亚洲乱码国产乱码精品精| 国产精品亚发布| 亚洲高清久久网| 高清日韩电视剧大全免费播放在线观看| 97国产成人精品视频|