介面卡注意
使用場景:有動機地修改乙個正常執行的系統的介面,這時應該考慮使用介面卡模式。
注意事項:介面卡不是在詳細設計時新增的,而是解決正在服役的專案的問題。
介面卡關鍵點
介面卡的關鍵就是,將被適配者載入到已經定義好的或在執行的系統中.介面卡需要實現目前執行系統中的介面,並轉成被適配者需要的格式.
介面卡例子
筆記本通過讀卡去讀取tf卡;
一、先模擬計算機讀取sd卡:
1、先建立乙個sd卡的介面:
public inte***ce sdcard
2、建立sd卡介面的實現類,模擬sd卡的功能:
public class sdcardimpl implements sdcard
@override
public int writesd(string msg)
}3、建立計算機介面,計算機提供讀取sd卡方法:
public inte***ce computer
4、建立乙個計算機例項,實現計算機介面,並實現其讀取sd卡方法:
public class thinkpadcomputer implements computer
}5、這時候就可以模擬計算機讀取sd卡功能:
public class computerreaddemo
}二、接下來在不改變計算機讀取sd卡介面的情況下,通過介面卡模式讀取tf卡:
1、建立tf卡介面:
public inte***ce tfcard
2、建立tf卡例項:
public class tfcardimpl implements tfcard
@override
public int writetf(string msg)
}3、建立sd適配tf (也可以說是sd相容tf,相當於讀卡器):
實現sdcard介面,並將要適配的物件作為介面卡的屬性引入。
public class sdadaptertf implements sdcard
@override
public string readsd()
@override
public int writesd(string msg)
}4、通過上面的例子測試計算機通過sd讀卡器讀取tf卡:
public class computerreaddemo
}輸出:
adapter read tf card
tf card reade msg : hello word tf card
在這種模式下,計算機並不需要知道具體是什麼卡,只需要負責操作介面即可,具體操作的什麼類,由介面卡決定。
介面卡模式總結
介面卡模式核心思想 將a介面的物件轉化成b介面的物件,使之從外觀上看似是b物件。可是確實a物件在執行實際的業務邏輯。看到介面卡模式的第一感覺就是 這也算個模式?就應該這樣處理啊!生活中有非常多鮮活的樣例,如網路介面卡 網絡卡 數據機,資料線,充電器等等。其缺點就是。須要有這麼乙個額外的東西才幹進行轉...
介面卡模式總結
1 定義 我喜歡的樣子你都有,你喜歡的樣子我有沒有,沒有的話,我送你乙個介面卡,好嗎?將乙個類的介面轉換成客戶希望的另外乙個介面,adapter模式使得原本由於介面不相容而不能一起工作的那些類可以一起工作。2 使用場景 系統資料和行為都正確,但介面不符時,我們應該考慮用介面卡,目的是使控制範圍之外的...
介面卡模式總結
定義 將乙個類的介面變換成客戶端所期待的另一種介面,從而使原本因介面不匹配而無法在一起工作的兩個類能夠在一起工作。三個角色 使用場景 準備修改乙個已經在執行的介面時 系統擴充套件時,需要使用乙個已有或新建立的類,但該類又不符合要求,就可以使用介面卡來完成。注意事項 在設計之初不要考慮介面卡。這個模式...