介面卡用來將一類介面轉換成使用者需要的另一類介面。從而解決介面相容的問題。
介面卡模式中包含三個角色。
1.需要被適配的類(adaptee)
2.目標介面(target):客戶所期待的介面。
3.介面卡(adapter):通過包裝乙個需要適配的物件,把原介面轉換成目標介面。
實現適配的方式有兩種:
1.類的介面卡模式,也就是通過繼承的方式。就是讓介面卡類去繼承需要被適配的類,同時實現目標介面,然後重新目標介面中的方法使其與被適配的類關聯起來。這樣的話,客戶端就可以通過目標介面,選擇需要的子類。
2.物件的介面卡模式,關於物件的介面卡模式,就不再讓介面卡類去繼承需要被適配的類,而是只需要實現目標介面,然後在類中關聯被適配物件。物件適的配器模式可以通過修改介面卡中關聯的物件實現對不同類的適配,因此更加靈活。
介面卡模式的類圖:
一。類的介面卡模式
// 已存在的、具有特殊功能、但不符合我們既有的標準介面的類
class adaptee }
// 目標介面,或稱為標準介面
inte***ce target
// 具體目標類,只提供普通功能
class concretetarget implements target }
// 介面卡類,繼承了被適配類,同時實現標準介面
class adapter extends adaptee implements target}
// 測試類public class client
}
物件介面卡模式:
// 介面卡類,直接關聯被適配類,同時實現標準介面
class adapter implements target
public void request() }
// 測試類
public class client
}
介面卡模式(類介面卡 物件介面卡)
做個筆記 引用 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...