二、物件介面卡
三、介面介面卡模式
介面卡模式,結構型模式,將某個類的介面轉換成另乙個介面
表示,主要目的是相容性,讓原本因介面不匹配不能一起工作
的二個類可以協同工作,別名包裝器。
介面卡模式三種方法:
1. 類介面卡
2. 物件介面卡
3. 介面介面卡
介面卡類通過繼承src類,實現dst類的介面,
完成src->dst的適配。
//src類
public
class
animal
//介面卡介面
public
inte***ce
voltage
//介面卡介面的實現
public
class
voltageadapter
extends
animal
implements
voltage
}//dst類
public
class
dog}
同類介面卡,將adapter類不在繼承src類,而是特有src類的
例項,以解決相容性的問題。持有src類實現dst類的介面,
完成src->dst。常用的一種。
//src類
public
class
animal
}//介面卡介面
public
inte***ce
voltage
//介面卡介面的實現
public
class
voltageadapter
implements
voltage
@override
public
void
eatall()
}//dst類
public
class
dog}
又稱預設介面卡模式,當不需要全部實現介面的方法時,
設計乙個抽象類實現介面,並為該介面中每個方法提供乙個
預設實現,那麼該抽象的子類可有選擇的覆蓋父類的某些方法。
//src類
public
class
animal
}//介面卡介面
public
inte***ce
inte***cem
//介面卡介面的實現
public
abstract
class
voltageadapter
implements
inte***cem
voidm2(
)voidm3(
)void4(
)}//dst類
public
class
dog}
}}
第六章 設計模式 模板模式
在模板模式 template pattern 中,乙個抽象類公開定義了執行它的方法的方式 模板。它的子類可以按需要重寫方法實現,但呼叫將以抽象類中定義的方式進行。這種型別的設計模式屬於行為型模式。主要解決 具有公共的行為方法,但每乙個具體子類可能實現的方式存在差異性,重寫該方法。何時使用 當存在相同...
設計模式(六) 介面卡模式
優點 通過引入乙個介面卡adapter來重用現有的不相容的舊類adeptee,而無需修改舊類原有結構。增加了舊類的復用性 介面卡的靈活性和擴充套件性都非常好 缺點 一次最多只能適配乙個舊類,不能同時適配多個舊類。適用範圍 需要有舊類,而舊類的介面不符合新系統的需要,甚至舊類都沒有源 客戶端 play...
命令模式 《Head First 設計模式》第六章
將 請求 封裝成物件,以便使用不同的請求 佇列或者日誌來引數化其他物件。命令模式也支援可撤銷操作。客戶 命令 接受命令執行者 被命令物件 device裝置 燈具 public class light public void off 車庫門 public class garagedoor public...