設計模式之Adapter模式

2021-04-13 02:06:02 字數 457 閱讀 9088

adapter的意圖可以這樣表述:將乙個類的介面轉換成客戶希望的另外乙個介面。adapter模式使原來由於介面不相容而不能一起工作的類可以一起工作。

採用adapter模式是源於這樣的問題:原有系統的資料和行為都正確,但介面不符。通常用於必須從抽象類派生時。其實現方式是將原有類包含在另乙個類中(組合方式,稱為物件adapter模式; 當然也可以採用私有繼承方式,稱為類adapter方式),讓包含類與需要的介面匹配,呼叫被包含類的方法。 

adapter和facade模式的乙個共同點是都存在既有的類。有幾點區別:facade模式不必按某個介面設計,而adapter模式必須按介面所需設計;facade模式物件不需要多型行為,而adapter模式可能需要;facade模式提供更簡單的介面,而adapter模式並不一定如此。

adapter模式實際上有任務轉接的意思。

最典型和常見的adapter模式當然就是大家熟悉的stl介面卡了,呵呵。

設計模式 之 Adapter

基礎幾何影象物件 如直線 矩形 是很容易實現的,但文字物件就比較複雜了,其中涉及到了文字格式 段落格式 螢幕更新 快取管理等諸多內容。如果此時正好有乙個成熟的文字繪製工具包可供使用,這個工具包中的textview物件提供了完整的文字格式 段落 螢幕及快取管理,實現了textshape物件需要實現的一...

玩轉設計模式之Adapter

玩轉設計模式之 adapter 設計模式很重要,地球人都知道。adapter 介面卡或者叫轉換器,這種模式主要用來將某乙個類的介面轉換成另外乙個類的介面。其實現起來也很簡單,就是新建乙個類,讓其實現所需要的介面,而其實現的過程是完全依賴於原需要被 adapt 的類的。這和我們現實生活中的各類介面卡非...

設計模式之 Adapter例項

include memory include iostream class t1 class t2 class iadaptor,抽象基類 class iadaptor class adaptor template class adaptor public iadaptor,private t 實現...