介面卡模式

2021-10-03 20:18:58 字數 621 閱讀 6610

大家都見過電源介面卡吧,電源介面卡就是最典型的介面卡模式的實現

假設a公司對競爭對手b公司進行了收購重組

a公司希望重組後和b公司的採購程式用同一套程式

假設a公司的採購程式如下

class collecta

void collect()

...//具體採購過程

b公司採購程式·如下

class collecb

void plancollect()

...//具體採購過程

這時候出現乙個問題,a公司和b公司的採購過程都一樣,但是想將b公司的採購程式接入時發現兩個介面不一樣,a公司想用自己的介面去實現呼叫,改造b公司介面又要花費大量的精力

這時候介面卡模式就大顯身手了

class bcompanyadapert

collectb collectb;

//建構函式,傳入collectb例項

void collect()

this.collecb.plancollect();

這樣a公司就可以用bcompanyadapert去呼叫collect()介面,底層實際上是呼叫b公司的介面,這樣就無需呼叫方和被呼叫方做出底層**的改變

這就是介面卡模式的強大威力

介面卡模式(類介面卡 物件介面卡)

做個筆記 引用 public inte ce usb public inte ce psp public class usber implements usb 類介面卡 psp適用usb介面 public class usbadapter extends usber implements psp 物...

介面卡模式 預設介面卡,類介面卡,物件介面卡

模式思想 改變乙個類的對外介面 增加或減少 以滿足不同外部呼叫者的需求 角色成員 目標介面 target 客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。需要適配的類 adaptee 需要適配的類或適配者類。介面卡 adapter 通過包裝乙個需要適配的物件,把原介面轉換成目標介面。適配...

設計模式 介面卡模式 類介面卡 物件介面卡

乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...