設計模式之6 介面卡Adapter

2021-07-26 00:23:54 字數 779 閱讀 5984

先說 介面卡,比如 美標的轉換插座、海淘電器用的110v到220v變壓器、還有安卓到蘋果的usb轉換接頭,這些都是非常常見的介面卡的案例。

adapter模式將乙個類的介面轉換成另外乙個介面。使得原本由於介面不相容而無法使用的類可以被正常呼叫。

介面卡模式 的類圖如下:

其中 target 為需要適配的目標介面,adaptee是需要被適配的模組,adapter介面卡作為中間的橋梁。

介面卡模式 的核心在於封裝,我們通過一段**來說明:

// 計算模組

class computer

;// 呼叫模組

void main(int a, int b, int& c)

// 介面卡adapter

class computerx

;

針對上面執行計算時介面不相容的問題,我們可以通過adapter模式,封裝乙個新的類 computerx,相容上層呼叫介面。

// 呼叫模組

void main(int a, int b, int& c)

這樣做的優勢在於不論上層模組還是下層模組,不用對其進行修改,能夠有效降低修改帶來的非預期錯誤。

java設計模式6 介面卡模式(Adapter)

我們接著討論設計模式,上篇文章我講完了5種建立型模式,這章開始,我將講下7種結構型模式 介面卡模式 裝飾模式 模式 外觀模式 橋接模式 組合模式 享元模式。其中物件的介面卡模式是各種模式的起源,我們看下面的圖 介面卡模式將某個類的介面轉換成客戶端期望的另乙個介面表示,目的是消除由於介面不匹配所造成的...

Java設計模式五 介面卡模式 Adapter

將一類的介面轉換成客戶希望的另外乙個介面,adapter模式使得原本由於介面不相容而不能一起工作那些類可以一起工作。適用情況 使用的前提是 介面中規定了所有要實現的方法 但乙個要實現此介面的具體類,只用到了其中的幾個方法,而其它的方法都是沒有用的。實現方法 用乙個抽象類實現已有的介面,並實現介面中所...

6 設計模式之介面卡模式

將一類介面轉換成另乙個類介面,使得原本具有相關性但不相容的兩個介面,可以可以在一起工作。生活中常見的介面卡就是手機充電器了 家裡的220v電源插座可以視作乙個介面,同時usb資料線也可視作乙個介面,這兩個介面具有相關性,但他們不相容,因為usb資料線需要乙個5v的輸入,但插座是220v的,因此我們就...