介面卡模式
介面卡模式目的是將乙個介面轉換成乙個介面。它能將新的未實現的介面,通過舊的已實現的介面來填充。
介面卡模式主要具有呼叫者client,目標介面 ,適配者 和被適配者(有可能是類或者物件)
介面卡模式可分為:物件介面卡 和 類介面卡。
物件介面卡採用的是組合的方式,介面卡具有舊介面實現類的成員變數。
類介面卡採用的是多重繼承的方式,雖然直接使用繼承很放變,但不易於擴充套件,基於「多組合,少繼承的設計原則」,不建議才用類介面卡。
流程圖採用的visio 畫的。不到位的地方歡迎點評。
圖中與其他介面卡模式流程圖中多出了oldinte***ce ,我是根據自己的理解畫的,根據介面卡的定義將乙個介面轉換成另乙個介面,所以我認為應該在類圖中體現出來。
**使用的偽**。
目標介面
public
inte***ce target
適配者
public
class
adapter
implements
target
public
void
targetmethod1()
public
void
targetmethod2()
client
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...