7.Adapter-适配器模式
生活随笔
收集整理的這篇文章主要介紹了
7.Adapter-适配器模式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Adapter 適配器模式
適配器:
也稱包裝樣式或者包裝(wrapper)。將一個類的接口轉接成用戶所期待的。
一個適配使得因接口不兼容而不能在一起工作的類工作在一起,做法是將類自己的接口包裹在一個已存在的類中。主要分為三類:類的適配器模式、對象的適配器模式、接口的適配器模式。
類適配器是通過類的繼承實現的適配;
對象適配器是通過對象間的關聯關系,組合關系實現的適配;
接口適配器用一個抽象類實現該接口所有方法,在繼承該抽象類重寫想要的方法。適配器模式說明
- Target 目標角色 該角色定義把其他類轉換為何種接口,也就是我們的期望接
口。 - Adaptee 源角色 你想把“誰”轉換成目標角色,這個“誰”就是源角色,它是已經存
在的、運行良好的類或對象。 - Adapter 適配器角色 適配器模式的核心角色,其他兩個角色都是已經存在的角
色,而適配器角色是需要新建立的,他的職責非常簡單:把源角色轉換為目標
角色。 適配器模式優點
- 適配器模式可以讓兩個沒有任何關系的類在一起運行,只要適配器這個角色能
夠搞定他們就成。 - 增加了類的透明性。我們訪問的是目標角色,但是實現卻在源角色里。
- 提高了類的復用度。源角色在原有系統中還是可以正常使用的。
- 靈活性非常好。不想要適配器時,刪掉這個適配器就好了,其他代碼不用改。
類適配器示例代碼:
類適配器示例類圖:
對象適配器示例類圖:
對象適配器示例代碼:
- 接口適配器示例:
可以讓用戶更加方便的使用該接口,比如一個接口有很多方法,而只需要實現其中一兩個方法,其他方法也不得不實現帶來不必要的麻煩。
在GUI編程是經常遇到這類問題,比如 java.awt.event.WindowListener 有7個方法
windowOpened(WindowEvent)
windowClosing(WindowEvent)
windowClosed(WindowEvent)
windowIconified(WindowEvent)
windowDeiconified(WindowEvent)
windowActivated(WindowEvent)
windowDeactivated(WindowEvent)
所以提供了
java.awt.event.WindowAdapter implements WindowListener, WindowStateListener, WindowFocusListener
WindowAdapter方便了我們編寫代碼,只需要繼承重寫想要的方法即可。
總結
以上是生活随笔為你收集整理的7.Adapter-适配器模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SSL 根证书的相关概念
- 下一篇: 某年某月