介面卡模式

2021-07-24 06:55:25 字數 1300 閱讀 8493

定義:

屬於結構型模式,其主要作用是將乙個類的介面轉換成客戶希望的另外乙個介面。介面卡模式使得原本由於介面不相容而不能一起工作的那些類可以一起工作。

比如你手機只有2.5mm介面(貌似就nokia幹的出來),但你只能買到3.5mm的,這時就需要買個介面卡了(─.─|||

意圖宗旨:

保留現有類所提供的服務,向客戶提供介面,以滿足客戶的期望

什麼時候可以使用它:

1你想使用乙個已經存在的類,而它的介面不符合你的需求。沒有2.5mm

2你想建立乙個可以復用的類,該類可以與其他不相關的類或不可預見的類(即那些介面可能不一定相容的類)協同工作。

3你想使用一些已經存在的子類,但是不可能對每乙個都進行子類化以匹配它們的介面。物件介面卡可以適配它的父類介面——僅適用於物件adapter。

如何實現:

1類介面卡

1

public

class adapter extends adaptee implements

target

6public

static

void

main(string args)10}

11inte***ce

target

14class

adaptee

18 }

2物件介面卡

1

public

class adapter implements

target

7@override

8public

void

getheadset2()

11public

static

void

main(string args)15}

16inte***ce

target

19class

adaptee

23 }

物件的介面卡模式的不同之處在於adapter角色封裝了adaptee角色,而不像類的介面卡模式所採取的繼承方式。其原理基本上是相似的

3預設介面卡模式

預設介面卡模式是一種特殊的介面卡模式,但這個介面卡是由乙個抽象類實現的,並且在抽象類中要實現目標介面中所規定的所有方法,但很多方法的實現都是空方法。而具體的子類都要繼承此抽象類。

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

做個筆記 引用 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...