<?php
abstract class toy
class dog extends toy
public function closemouth()
}class cat extends toy
public function closemouth()
}//目標角色:紅棗遙控公司
inte***ce redtarget
//目標角色:綠棗遙控公司及
inte***ce greentarget
//類介面卡角色:紅棗遙控公司
class redadapter implements redtarget
//委派呼叫adaptee的samplemethod1方法
public function domouthopen()
public function domouthclose()
}//類介面卡角色:綠棗遙控公司
class greenadapter implements greentarget
//委派呼叫adaptee:greentarget的operatemouth方法
public function operatemouth($type = 0)
else
}}class testdriver
}$test = new testdriver();
$test->run();
PHP介面卡模式
介面卡模式 adapter 將乙個類的介面轉換成客戶希望的另外乙個介面。adapter模式使得原本由於介面不相容而不能一起工作的那些類可以一起工作。適用場景 1 已經存在的類的介面不符合我們的需求 2 建立乙個可以復用的類,使得該類可以與其他不相關的類或不可預見的類 即那些介面可能不一定相容的類 協...
介面卡模式 PHP
學習框架遇到介面卡問題,做下記錄 1.類介面卡,以繼承為主要方式,擴充套件原有的類 inte ce class1 inte ce class2 class class3 implements class1 public function f2 class class4 extends class3 ...
php 介面卡模式
介面卡模式 現在有這樣乙個場景,某公司有一群動物,各種動物會吃飯,說話,普通實現方式就是寫乙個父類,其子類去繼承父類實現該方法 abstract class subject class cat extends subject public function eat 現在其他動物要進來,不過他們呼叫的...