日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Adapter(适配器)模式

發布時間:2024/8/1 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Adapter(适配器)模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Adapter 模式是一個常用的模式,它可以與其他很多模式共同使用
Adapter模式的意圖是 將一個類的接口轉換成希望的另外一種接口,Adapter模式使原本由接口不兼容而不能一起工作的那一些類可以起工作,就是說 需要一種方法,為一個內容合適但接口不配的對象創建一個新的接口,這樣把一個類的接口轉換成客戶端所期待的另一個接口,從而使原接口不匹配而無法在一起工作的兩個類能在一起工作

意圖:將一個無法控制的現有對象與一個特定的接口相匹配 問題:一個系統擁有正確的數據行為,但接口卻是錯誤的,典型用途:必須把某些東西實現為定義或已經擁有的抽象類的派生類 角色:目標(定義一個客戶端使用特定接口)、客戶(使用目標接口與和目標接口一致的對象合作)、被適配者(一個現存需要匹配的接口)、適配器(負責將接口轉換成目標) 解決方案:Adapter模式用需要的接口對無法修改的類進行包裝 參與者與協作者:Adapter 對 Adaptee 的接口進行適配,使它與Target(Adapter派生自它)相匹配。讓 Client 把 Adaptee 當作 Target 的一個類型來使用它 效果:Adapter 模式讓現存的對象適應新的結構,而不受接口的限制 實現:將現存的類包含在另一個類之中。包容類與需要的接口相匹配,并調用被包容類的方法
許多模式都要求某些特定的派生自同一個類,如果已經有現存的類,可以用 Adapter模式將它與適當的抽象類相適配
Adapter模式有兩種用類型: 1> 對象 Adapter 模式:使用 Adapter模式叫做對象Adapter模式,因為它依賴于一個對象(適配對象)包含另一個對象(被適配對象) 2> 類 Adapter 模式:實現 Adapter模式的另一種方法是使用多重繼承,在這種情況下,它被稱為類 Adapter模式
Facade模式 與 Adapter模式的比較
Adapter模式將接口轉換成另一個現有的接口
如,示例代碼: public interface XmlReader { public InputStream xmlReader(); }
public interface ReaderXml { public InputStream readerXml(); }
public class B implements ReaderXml { @Override public InputStream readerXml() { return null ; } }
public class Adapter1 extends B implements XmlReader { @Override public InputStream xmlReader() { return readerXml(); } }
public class Adapter2 implements XmlReader { ReaderXml b = new B(); @Override public InputStream xmlReader() { return b .readerXml(); } }

總結

以上是生活随笔為你收集整理的Adapter(适配器)模式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。