題目: 介面卡模式(adapter)
名字: km
時 間: 2015.1.29
(一)那是神馬
1,官方定義
將乙個類的介面轉成客戶端需要的另外乙個介面。
adapter模式使得原本由於介面不相容而不能一起工作的那些類可以在一起工作.
2,我的理解
這個詞最早在電工學裡,有些國家用110v電壓,而我們國家用220v;
你的筆記本不能任何電壓都ok,所以出現了介面卡,把不同的電壓轉換成筆記本可用的電壓。
3,一些補充:
軟體開發中,對系統的資料和行為都正確,但介面不符時,我們應該考慮用介面卡;
目的是使控制範圍之外的乙個原有物件與某個介面匹配。
(二)何時用adapter
一般不會有哪個設計師,在開始設計的時候就考慮用這種模式;大多在後期維護,出現介面不同,但功能很相似的時候,可以考慮用adapter.
(三)舉個栗子(此圖摘自大話設計書中)
adaptee類的**
/**
* 以前的類(需要適配) */
class special {
public
void specialrequest() {
system.out.println("以前的請求!");
target類的**
/**
* 目標類 */
class target {
protected
void request() {
system.out.println("現在的請求!");
adapter類的**
/**
* 介面卡:適配模式 */
class adapter extends target {
private special special;
public adapter() {
special = new special();
protected
void request() {
special.specialrequest();
看看怎麼執行的(客戶端**)
/**
* 最基礎adapter的demo */
public
static
void main(string args) {
target target = new adapter();
target.request();
執行結果:以前的請求!
親們,第一次自己總結這個,肯定有不足之處,有好的建議請告訴我! 灰常感謝!
設計模式 介面卡模式 Adapter
定義 把乙個類的介面轉換成客戶端期待的介面 從而使原來由於介面不相容而不能一起工作的那些類可以一起工作 典型描述 筆記本電源線是三個口的,如果插板只有兩個口的時候就不匹配了 這時候乙個三口到兩口的轉化器就解決此問題 介面卡模式就相當於轉化器 介面卡模式的構成 目標抽象角色 target 定義客戶要的...
設計模式 介面卡模式(Adapter)
介面卡模式是將乙個型別介面進行封裝從而轉化另乙個型別的介面,它的作用相當於乙個型別轉換器。1 模式中的角色 adaptee介面 這是需要被轉換的源型別,即需要進行轉換的介面。adapter類 對adaptee進行轉換的類 target介面 目標介面,最終轉化成的介面型別 2 角色關係圖 3 例項 描...
設計模式 介面卡模式(Adapter)
目的是將物件包裝起來,讓它們看起來不像自己而像是別的東西。介面卡模式不僅可以將一種介面包裝成另一種介面,還可以將一組介面包裝成一種介面。其目的是將乙個類的介面轉換成客戶期望的另乙個介面。介面卡讓原本的介面不相容的類可以合作無間。與裝飾者模式不同的是,介面卡的目的是為了相容客戶期望的介面,必須將乙個不...