8. 結構型-裝飾者模式

模式簡述

  • 這個模式最經典的應用就是在Java的I/O流中應用,對於文件流讀寫操作來說,最基本的操作就是讀取、寫入
  • 但實際操作時又涉及到很多的種類的操作,比如字節、字符讀取、是否緩存、讀寫文件時提供訪問效率,等等,
  • 這些功能都是額外的功能又或者說增強功能,就如同現在的氪金遊戲,氪金就是增加玩家能力,更好的過關
  • 通過這個模式我們來完成功能增強,更好的完成原有任務

使用目的

  • 主要解決繼承關係過於複雜的問題,通過組合來替代繼承。
  • 主要作用是給原始類添加增強功能。
    這也是判斷是否該用裝飾器模式的一個重要的依據。
    除此之外,裝飾器模式還有一個特點,那就是可以對原始類嵌套使用多個裝飾器。爲了滿足這個應用場景,在設計的時候,裝飾器類需要跟原始類繼承相同的抽象類或者接口

結構圖

使用設計模式的目的是爲了讓代碼結構清晰,組織簡單,避免過度設計

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