設計模式 介面卡模式

2021-07-31 11:42:56 字數 1048 閱讀 8866

介面卡模式(adapter)

介面卡模式將某個類的介面轉換成客戶端期望的另乙個介面表示,目的是消除由於介面不匹配所造成的類的相容性問題。主要分為三類:類的介面卡模式、物件的介面卡模式、

介面的介面卡模式。首先,我們來看看類的介面卡模式, 核心思想就是:有乙個source類,擁有乙個方法,待適配,目標介面時targetable,通過adapter類,將source的功
能擴充套件到targetable裡。
**:
public class source 

}public inte***ce targetable

public class adapter extends source implements targetable

}public class adaptertest

}輸出:

this is original method!

this is the targetable method!

這樣targetable介面的實現類就具有了source類的功能。物件的介面卡模式基本思路和類的介面卡模式相同,只是將adapter類作修改,這次不繼承source類,而是持有source

類的例項,以達到解決相容性的問題。我們修改adapter類的原始碼:
private source source;

super();

this.source = source;

} @override

public void method2()

@override

public void method1()

} 測試類:

public class adaptertest

} 輸出:

this is original method!

this is the targetable method!

設計模式 介面卡模式 類介面卡 物件介面卡

乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...

設計模式之介面卡模式(類介面卡模式)

介面卡模式,即定義乙個包裝類,用於包裝不相容介面的物件 包裝類 介面卡adapter 被包裝物件 適配者adaptee 被適配的類 把乙個類的介面變換成客戶端所期待的另一種介面,從而使原本介面不匹配而無法一起工作的兩個類能夠在一起工作。介面卡模式的形式分為 類的介面卡模式和物件的介面卡模式 模式原理...

設計模式 介面卡模式

01 02 author rollen holt 設計模式之 介面卡模式 03 04 05 inte ce window 11 12 abstract class windowadapter 16 public void close 19 public void activated 22 publi...