本質:轉換匹配,復用功能
介面卡模式的兩種形式:類的介面卡模式、 物件的介面卡模式
adapter模式主要應用於「希望復用一些現存的類,但是介面又與復用環境要求不一致的情況」,在遺留**復用、類庫遷移等方面非常有用。
目標(target)角色:
這是客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。
源(adaptee)角色:
需要適配的類。
介面卡(adapter)角色:
通過在內部包裝(wrap)乙個adaptee物件,把源介面轉換成目標介面。
示意性實現:
adaptee類沒有request方法,而客戶期待這個方法。為了使客戶能夠使用adaptee類,提供乙個中間環節,即類adapter類,adapter類實現了target介面,並繼承自adaptee,adapter類的request方法重新封裝了adaptee的specificrequest方法,實現了適配的目的。
目標(target)角色:
這是客戶所期待的介面。因為c#不支援多繼承,所以target必須是介面,不可以是類。
源(adaptee)角色:
需要適配的類。
介面卡(adapter)角色:
把源介面轉換成目標介面。這一角色必須是類
inte***ce
itarget
class
adaptee
}
class
adapter
:adaptee
, itarget
}
public
class
client
}
優點:
缺點:
設計模式 介面卡模式 類介面卡 物件介面卡
乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...
設計模式之介面卡模式(類介面卡模式)
介面卡模式,即定義乙個包裝類,用於包裝不相容介面的物件 包裝類 介面卡adapter 被包裝物件 適配者adaptee 被適配的類 把乙個類的介面變換成客戶端所期待的另一種介面,從而使原本介面不匹配而無法一起工作的兩個類能夠在一起工作。介面卡模式的形式分為 類的介面卡模式和物件的介面卡模式 模式原理...
設計模式 介面卡模式
01 02 author rollen holt 設計模式之 介面卡模式 03 04 05 inte ce window 11 12 abstract class windowadapter 16 public void close 19 public void activated 22 publi...