介面卡模式
介面卡模式的目的是使用乙個已經存在的類,而它的介面不符合我們的需求,想建立乙個復用的類,該類可以與其他不相關的類或不可預見的類協同工作。
介面卡模式分為兩類
類的介面卡模式----採用繼承模式
物件的介面卡模式--採用物件組合方式實現
介面卡模式有四種角色
目標抽象角色(target)--定義客戶所期待要使用的介面
源角色(adaptee)--需要被適配的介面
介面卡角色(adapter)--用來把源介面轉換成符合要求的目標介面的裝置
客戶端(client)
例子如下:
背景:我們想設計乙個可以同時使用電壓是110伏和220伏的介面卡。
源角色public class adaptee }
目標抽象角色
public inte***ce target
介面卡角色--此角色用於拓展原角色,實現目標角色從而使得目標角色改動時候,不用改動原角色,只需要改動介面卡即可:
public class adapter extends adaptee implements target }
客戶端角色
public client
public void test() }
-------這樣,就可以在不用改變源角色的情況下,可以使用兩種介面------------------------------
介面卡模式(類介面卡 物件介面卡)
做個筆記 引用 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...