介面卡模式

2021-10-02 00:12:52 字數 1660 閱讀 9052

介面卡模式(有時候也稱包裝樣式或者包裝)將乙個類的介面適配成使用者所期待的。目的是消除由於介面不匹配所造成類的相容性問題。

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

01、類的介面卡模式

核心思想是:有乙個source類,擁有乙個方法待適配,目標介面是targetable,通過classadapter類,將source的功能擴充套件到targetable裡

adapter類繼承source類,實現targetable介面。

這樣targetable介面的實現類就具有了source類的功能。

**如下:

source類

public class source 

}

targetable類

public inte***ce targetable
classadapter類

public class classadapter extends source implements targetable 

}

測試類

public static void main(string args)
02、物件的介面卡模式private source source;

super();

this.source = source; }

public void method2()

public void method1() }

測試類

public static void main(string args)
03、介面的介面卡模式

servlet介面卡設計模式解決**醜陋之genericservlet

第三種介面卡模式是介面的介面卡模式,介面的介面卡是這樣的:

有時我們寫的乙個介面中有多個抽象方法,當我們寫該介面的實現類時,必須實現該介面的所有方法,

這明顯有時比較浪費,因為並不是所有的方法都是我們需要的,有時只需要某一些,此處為了解決這個問題,

我們引入了介面的介面卡模式,借助於乙個抽象類,該抽象類實現了該介面,實現了所有的方法,

而我們不和原始的介面打交道,只和該抽象類取得聯絡,所以我們寫乙個類,繼承該抽象類,重寫我們需要的方法就可以。

inte***ceadapter介面

public inte***ce inte***ceadapter
public void method1()

public void method2() }

inte***cetargetable類

public void method1()}

inte***cetargetable2類

public void method2()}

測試類

public static void main(string args)
希望對你有幫助,祝你有乙個好心情,加油!

若有錯誤、不全、可優化的點,歡迎糾正與補充!

介面卡模式(類介面卡 物件介面卡)

做個筆記 引用 public inte ce usb public inte ce psp public class usber implements usb 類介面卡 psp適用usb介面 public class usbadapter extends usber implements psp 物...

介面卡模式 預設介面卡,類介面卡,物件介面卡

模式思想 改變乙個類的對外介面 增加或減少 以滿足不同外部呼叫者的需求 角色成員 目標介面 target 客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。需要適配的類 adaptee 需要適配的類或適配者類。介面卡 adapter 通過包裝乙個需要適配的物件,把原介面轉換成目標介面。適配...

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

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