裝飾器模式(Decorator Pattern)是一種結構型設計模式,它允許向一個現有的對象添加新的功能,同時又不改變其結構。這種模式創建了一個裝飾類,用來包裝原有的類,并在保持類方法簽名完整性的前提下,提供了額外的功能。
一、裝飾器模式基礎概念
1.1 什么是裝飾器模式
裝飾器模式通過將對象放入包含行為的特殊封裝對象中來為原對象動態添加新的行為。這種設計模式屬于結構型模式,它作為現有類的一個包裝器。
核心思想:不通過繼承擴展對象的功能,而是通過組合的方式動態地擴展對象的功能。
專業定義:裝飾器模式允許向一個現有的對象添加新的功能,同時又不改變其結構。這種模式創建了一個裝飾類,用來包裝原有的類,并在保持類方法簽名完整性的前提下,提供了額外的功能。
通俗理解:就像給手機加裝手機殼一樣,手機本身的功能沒有改變,但通過裝飾(手機殼)增加了保護功能,甚至美觀性。你可以隨時更換不同的手機殼,而不需要改變手機本身。
1.2 裝飾器模式的結構
裝飾器模式主要包含以下角色: