通常,客戶類(client of class)通過類的介面訪問它提供的服務。有時現有的類(existing class )可以提供客戶類的功能需要,但是它所提供的介面不一定是客戶類所期望的。這是由於現有的介面名稱與客戶類所查詢的不同等諸多不同原因導致的。在這種情況下, 現有的介面需要轉化 (convert) 為客戶類期望的介面,這樣保證了對現有類的重用。介面卡模式(adapter pattern)可以完成這樣的轉化。
void 進攻()
public
void 防守()
}public
class
adapter
extends
player
public
void
attack()
public
void
defense()
public
static
void
main(string args)
}
開發過程需要引入乙個新的日誌介面,但新的日誌介面和以前的不一樣}上兩種適配方式,可以看出在類適配方式中,是通過類的繼承來實現的,同時也具有介面ilog的所有行為,這些就違背了物件導向設計原則中的類的單一職責原則,而物件介面卡則是通過物件組合的方式來實現的,則符合物件導向的精神,所以推薦用物件適配的模式。模式使用
介面卡模式 Adapter
一句話 什麼是adapter adapter 就是乙個轉換器,比如乙個電源插頭可以讓乙個兩插頭的電器使用牆壁上的三插頭電源。這次的介紹將不寫 雖然設計模式是為了 而生,但我認為這是一種看世界的方法,不僅僅是一種 的設計方式,所以這次的介面卡模式因為比較簡單和容易理解就不再寫 解釋,但介面卡的思想能用...
Adapter 介面卡模式
1.概念 介面卡模式 adapter pattern gof95 把乙個類的介面變換成客戶端所期待的另一種介面,從而使原本因介面不匹配而無法在一起工作的兩個類能夠在一起工作。2.兩種形式 a.類的介面卡模式 b.物件的介面卡模式 3.模擬問題 現在假設我們的程式已經設計了介面request介面,但是...
Adapter介面卡模式
adapter介面卡模式是一種結構型模式,主要應對 由於應用環境的變化,常常需要將 一些現存的物件 放在新的環境中應用,但是,新環境要求的介面是現存物件所不滿足的。設計模式 中說道 將乙個類的介面轉換成客戶希望的另乙個介面。adapter模式使得原本由於介面不相容而不能一起工作的類可以一起工作。在實...