設計模式之介面卡模式

2021-07-11 00:07:09 字數 1160 閱讀 8239

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

主要分為三類:類的介面卡模式、物件的介面卡模式、介面的介面卡模式

public class source 

}

適配的介面:

public inte***ce targetable

實現類:

public class adapter extends source implements targetable

}

基本思路和類的介面卡模式相同,只是將adapter類作修改,這次不繼承source類,而是持有source類的例項,以達到解決相容性的問題

private source source;

//自己傳入物件

super();

this.source = source;

}@override

public void method2()

@override

public void method1() }

第三種介面卡模式是介面的介面卡模式,介面的介面卡是這樣的:有時我們寫的乙個介面中有多個抽象方法,當我們寫該介面的實現類時,必須實現該介面的所有方法,這明顯有時比較浪費,因為並不是所有的方法都是我們需要的,有時只需要某一些,此處為了解決這個問題,我們引入了介面的介面卡模式,借助於乙個抽象類,該抽象類實現了該介面,實現了所有的方法,而我們不和原始的介面打交道,只和該抽象類取得聯絡,所以我們寫乙個類,繼承該抽象類,重寫我們需要的方法就行。

public inte***ce sourceable
public void method1(){}

public void method2(){}

} //通過中轉的抽象類 可以讓這裡想用到介面的哪個方法 就只重寫哪個方法

public void method1()

public void method2()

}}

* 介面適配模式測試

*/ public static void main(string args)

}

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

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

設計模式之 介面卡模式

1,介面卡模式把乙個類的介面變換成客戶端所期待的另一種介面,從而使原本因介面不匹配而無法一起工作的兩個類能夠在一起工作 2,介面卡模式有兩種 1 類的介面卡模式 介面卡類繼承源類 這樣介面卡類就繼承了源類有的方法 並實現目標介面,實現在源類中沒有而在介面中有的方法,從而實現介面卡類有目標介面的所有方...

設計模式之介面卡模式

介面卡模式定義 將乙個類的介面,轉換成客戶期望的另乙個介面。介面卡讓原本介面不相容的類可以合作無間。簡單定義 封裝物件,並提供不同的介面。簡單例子 鴨子介面 package headfirst.adapter.ducks public inte ce duck 具體鴨子 package headfi...