設計模式 第六章 介面卡模式

2021-10-25 10:34:17 字數 1549 閱讀 6566

二、物件介面卡

三、介面介面卡模式

介面卡模式,結構型模式,將某個類的介面轉換成另乙個介面

表示,主要目的是相容性,讓原本因介面不匹配不能一起工作

的二個類可以協同工作,別名包裝器。

介面卡模式三種方法:

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...