介面卡模式(Adapter)

2021-09-02 15:17:48 字數 846 閱讀 7542

gof意圖:將乙個類的介面轉換成客戶希望的另外乙個介面。

adapt 模式使得原本由於接

口不相容而不能一起工作的那些類可以一起工作。

角色:1 目標介面(target):客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。

2 介面卡(adapter):通過包裝乙個需要適配的物件,把原介面轉換成目標介面。

3 需要適配的類(adaptee):需要適配的類或被適配的類。

實現:略

適用場景

1 系統需要使用現有的類,而這些類的介面不符合系統的介面。

2 想要建立乙個可以重用的類,用於與一些彼此之間沒有太大關聯的一些類,包括一些可能在將來引進的類一起工作。

3 兩個類所做的事情相同或相似,但是具有不同介面的時候。

4 舊的系統開發的類已經實現了一些功能,但是客戶端卻只能以另外介面的形式訪問,但我們不希望手動更改原有類的時候。

5 使用第三方元件,元件介面定義和自己定義的不同,不希望修改自己的介面,但是要使用第三方元件介面的功能。

優點:1 通過介面卡,客戶端可以呼叫同一介面,因而對客戶端來說是透明的。這樣做更簡單、更直接、更緊湊。

2 復用了現存的類,解決了現存類和復用環境要求不一致的問題。

3 將目標類和適配者類解耦,通過引入乙個介面卡類重用現有的適配者類,而無需修改原有**。

4 乙個物件介面卡可以把多個不同的適配者類適配到同乙個目標,也就是說,同乙個介面卡可以把適配者類和它的子類都適配到目標介面。

缺點:對於物件介面卡來說,更換介面卡的實現過程比較複雜

介面卡模式 Adapter

一句話 什麼是adapter adapter 就是乙個轉換器,比如乙個電源插頭可以讓乙個兩插頭的電器使用牆壁上的三插頭電源。這次的介紹將不寫 雖然設計模式是為了 而生,但我認為這是一種看世界的方法,不僅僅是一種 的設計方式,所以這次的介面卡模式因為比較簡單和容易理解就不再寫 解釋,但介面卡的思想能用...

Adapter 介面卡模式

1.概念 介面卡模式 adapter pattern gof95 把乙個類的介面變換成客戶端所期待的另一種介面,從而使原本因介面不匹配而無法在一起工作的兩個類能夠在一起工作。2.兩種形式 a.類的介面卡模式 b.物件的介面卡模式 3.模擬問題 現在假設我們的程式已經設計了介面request介面,但是...

Adapter介面卡模式

adapter介面卡模式是一種結構型模式,主要應對 由於應用環境的變化,常常需要將 一些現存的物件 放在新的環境中應用,但是,新環境要求的介面是現存物件所不滿足的。設計模式 中說道 將乙個類的介面轉換成客戶希望的另乙個介面。adapter模式使得原本由於介面不相容而不能一起工作的類可以一起工作。在實...