介面卡模式:包裝模式
作為兩個不相容的介面之間的橋梁,結合了兩個獨立介面的功能。
介面卡模式將乙個類的介面轉換成客戶希望的另外乙個介面;使得原本由於介面不相容而不能在一起工作的那些類可以一起工作。
介面卡繼承或依賴已有的物件,實現想要的目標介面。
主要解決將一些現存的物件放到新的環境中,而新的環境要求的介面是現物件不能滿足的。
在介面卡模式中可以定義乙個包裝類,包裝不相容介面的物件,這個包裝類指的是介面卡,所包裝的物件就是適配者(被適配的類)
介面卡的實現就是把客戶類的請求轉化為對適配者的相應的介面的呼叫。
當客戶類呼叫介面卡的方法時,在介面卡類的內部將呼叫適配者類的方法。
介面卡可以使介面不相容而不能互動的類可以一起工作。
介面卡角色:目標target、被適配者adaptee、介面卡adapter
優點:1、目標和被適配者是完全解耦的,就是互相沒有一點關係的。
2、滿足「開閉--原則」
3、讓兩個沒有關聯的類一起執行
4、提高了類的復用性
5、靈活性好
缺點:過多使用介面卡,會讓系統非常凌亂。
適用:乙個程式想使用已經存在的類,但該類所實現的介面和當前程式所使用的介面不一樣。
介面卡模式(類介面卡 物件介面卡)
做個筆記 引用 public inte ce usb public inte ce psp public class usber implements usb 類介面卡 psp適用usb介面 public class usbadapter extends usber implements psp 物...
介面卡模式 預設介面卡,類介面卡,物件介面卡
模式思想 改變乙個類的對外介面 增加或減少 以滿足不同外部呼叫者的需求 角色成員 目標介面 target 客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。需要適配的類 adaptee 需要適配的類或適配者類。介面卡 adapter 通過包裝乙個需要適配的物件,把原介面轉換成目標介面。適配...
設計模式 介面卡模式 類介面卡 物件介面卡
乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...