介面卡模式解決不相容類之間相互一起工作的問題。
舉個現實的例子,sd卡大家都知道吧,如果電腦要讀取上面的資料,我們不能把卡直接插在usb口上,很顯然他們的介面不相容,這時候我們就需要乙個讀卡器,它提供了相容電腦的usb口,也提供了sd卡相容的介面,通過讀卡器就能夠使它們兩者一起很好的工作。這個讀卡器稱之為介面卡(adapter),usb口就是適配者(target),sd卡就是被適配者(adaptee)。
再回到程式設計上來說,有類a和類b兩個不相容的類,類a有客戶(也就是類a的使用者)所期望的功能,類b已經實現了類a的一些功能,那麼可以建立乙個介面卡類c,它利用類b現有的功能,又提供符合客戶要求的類a功能,最終實現**的復用。
要了解介面卡模式,就要了解三種介面卡,分別是類介面卡,物件介面卡和預設介面卡。
類介面卡是通過繼承現有類來實現功能復用。
物件介面卡則是通過組合現有類的物件實現,簡單點說就建立現有類物件,把它加到介面卡類中使用。
預設介面卡是個特殊的介面卡。主要是對介面提供乙個預設的實現,以後使用可以在預設實現上進行擴充套件即可。
設計模式 介面卡模式 類介面卡 物件介面卡
乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...
設計模式之介面卡模式(類介面卡模式)
介面卡模式,即定義乙個包裝類,用於包裝不相容介面的物件 包裝類 介面卡adapter 被包裝物件 適配者adaptee 被適配的類 把乙個類的介面變換成客戶端所期待的另一種介面,從而使原本介面不匹配而無法一起工作的兩個類能夠在一起工作。介面卡模式的形式分為 類的介面卡模式和物件的介面卡模式 模式原理...
設計模式 介面卡模式
01 02 author rollen holt 設計模式之 介面卡模式 03 04 05 inte ce window 11 12 abstract class windowadapter 16 public void close 19 public void activated 22 publi...