05-適配器模式(Adapter)

概述:

把一個類接口轉換成另一個用戶需要的接口,使原本接口不兼容的類可以一起工作

適用場景:

已經存在的類,它的方法和需求不匹配時(方法結果相同或相似) 

不是軟件設計階段考慮的設計模式,是隨着軟件維護,由於 不同產品、不同廠家造成功能類似而接口不相同情況下的解決方案

優點:

能提高類的透明性和複用,現有的類複用但不需要改變

目標類和適配器類解耦,提高程序擴展性

符合開閉原則

缺點:

適配器編寫過程需要全面考慮,可能會增加系統的複雜性

增加系統代碼可讀的難度

一般分爲類適配器和對象適配器,一個通過繼承,一個通過組合

 

 

類適配模式

對象適配模式

源代碼:https://github.com/NoSuchClass/design_pattern/tree/master/src/structural/adapter

 

 

JDK中使用

* java.util.Arrays#asList()

* java.util.Collections#list()

* java.util.Collections#enumeration()

* javax.xml.bind.annotation.adapters.XMLAdapter

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章