Head First 介面卡模式

2021-07-23 02:43:45 字數 724 閱讀 2690

介面卡模式:將乙個類的介面,轉換成客戶期望的另乙個介面。介面卡讓原本介面不相容的類可以合作無間。

回想之前部落格中鴨子的例子,這裡有乙個鴨子的介面,和乙個鴨子的子類。

public inte***ce duck 

public class mallardduck implements duck

public void fly()

}

下面是火雞的介面和子類

public inte***ce turkey 

public class wildturkey implements turkey

public fly()

}

現在我們缺鴨子物件,想用火雞冒充。但是介面不同,所以不能直接來用。我們就可以做個介面卡。

public class turkeyadapter implements duck 

public void quack()

public void fly()

}}

下面是測試類,先火雞測試,然後是鴨子的測試。最後就拿火雞介面卡來測試。

public class ducktestdrive 

static void testduck(duck duck)

}

介面卡模式(類介面卡 物件介面卡)

做個筆記 引用 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...