Adapter 模式
如果大家把自己的筆記本帶到印度,英國去用,這時候你就需要一個Adapter,因為中國的電壓是220V,而他們的不是.或者大家也許用過把一個竄口的鼠標加一個Adapter而接到USB接口上.在軟件開發中也有這樣的場景,常常需要把一些現存的對象放到新的應用環境中,但是新的應用系統要求的接口卻和這些現存的對象不一致,這時候就需要一個Adapter,將現存的對象轉換成新的應用系統希望的接口.
Adapter的宗旨就是:不改變原有實現的基礎上,將原先不兼容的接口改成兼容的接口.
一般用兩種策略來實現,1)把需要轉換的對象包含進來,2)繼承需要轉換的類,同時實現轉換后的接口.
1)對象Adapter模式,它依賴于一個對象(適配器)包含另一個對象(被適配的對象).
?
?
Adaptee已經有了提供穩定電流功能,但是是240V的,Adapter把Adaptee提供的電流降壓,重用比直接再產生電
流要強多了,是不是?
2)類Adapter模式,它是通過多重繼承來實現的(java中沒有多繼承,是通過接口來實現的).
?
Adaptee已經有了提供穩定電流功能,但是是240V的,Adapter把Adaptee提供的電流降壓,通過繼承的方法可以訪問到supply240vElectricity,然后降壓.
?在上面兩種方法中,更推薦使用對象Adapter:
1)OO模式中更提倡組合而非繼承,耦合度更低.
2)Adapter在這里主要是提供PowerSupplier接口的方法,而不關心Adaptee的其它方法,如果用繼承,就繼承了Adaptee的全部方法.
3)Adapter可能會用到多個Adaptee提供的方法.
?
總結
以上是生活随笔為你收集整理的Adapter 模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于java宠物商店管理系统(java毕
- 下一篇: 工训物流小车视觉开源代码,包含二维码、条