設計模式之介面卡模式

2021-08-04 20:55:54 字數 1524 閱讀 7667

介面卡模式就是把乙個不能使用的物件轉換成乙個可以使用的物件,使得系統適應不同的場景。

這裡的例子是:電腦要通過三項插頭充電,但現在只有乙個二項插頭,所以要new 乙個介面卡,將二項插頭轉化成三項插頭,從而使得電腦正常充電。

在介面卡類中加入 二項插頭的物件, 方便對其進行轉化。 當然實現介面卡有繼承和組合兩種方式,但我們毫無疑問是採用組合的方式實現介面卡,組合可以靈活使用,方便適應未來的需求。

三項插頭介面(threeplug)
public

inte***ce threeplug

三項插頭介面實現(threeplugimpl )
public

class

threeplugimpl

implements

threeplug

}

二項插頭介面(twoplug)
public

inte***ce twoplug

二項插頭介面實現(twoplugimpl )
public

class

twoplugimpl

implements

twoplug

}

電腦類(computer)
public

class computer

public

void

charge()

}

介面卡(adapter 實現 threeplug 介面)
public

class

adapter

implements

threeplug

@override

public

void

work()

}

測試類(test )
public

class test

}

控制台輸出
1.正常呼叫三項插頭充電三項插座在工作中…

電腦在充電

2.呼叫介面卡,利用二項插頭充電
介面卡工作中..

二項插座在工作中..

電腦在充電

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

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

設計模式之 介面卡模式

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

設計模式之介面卡模式

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