設計模式 裝飾者模式

2021-08-20 07:27:40 字數 1574 閱讀 7077

定義

裝飾者模式通過委託的方式,將物件的功能疊加,從而增強原有物件功能。

角色角色

作用元件介面

是裝飾者或者被裝飾者的超類或者介面,定義了被裝飾者的核心功能和修飾者需要加強的方法

具體元件

實現了元件介面的核心方法,完成業務邏輯,是被裝飾的物件

裝飾者實現元件介面,並持有具體的被裝飾者物件

具體裝飾者

具體實現裝飾的業務邏輯,各個具體裝飾者是可以疊加的 類圖

應用假設要將某結果以html進行發布,那麼首先需要將內容轉化為html文字。同時,內容要通過http傳輸,還需要為其新增http頭。

**

/**

* 裝飾介面

*@author wzx

*@time 2018/5/27

*/public

inte***ce

ipacketcreator

/**

* 具體元件

*@author wzx

*@time 2018/5/27

*/public

class

packeybodycreator

implements

ipacketcreator

}

/**

* 裝飾者

}

輸出結果
cache-control

:no-cachecontent of packet

設計模式 裝飾者模式

public abstract class beverage public abstract double cost public abstract class condimentdecorator extends beverage public class darkroast extends be...

設計模式 裝飾者模式

沒什麼特別的,之前看懂了,這次自己再複述一下。畢竟把別人講懂了才是真的懂了。主要參考了head first 設計模式。例子講述的是在為星巴克咖啡的製作訂單的情況,比如客人點了飲料,那麼系統會自動算出 不知道是我沒有體會到,還是這個例子不太合適,算出 那麼簡單的事還需要用到類?不過不影響我們思考裝飾者...

設計模式 裝飾者模式

好幾天沒出部落格了,在學習android的一些新控制項的時候,用到了乙個模式,叫裝飾者模式,所以在此講講這個模式。模式,包含以下四個角色 1 抽象構件 component 角色 給出乙個抽象介面,以規範準備接收附加責任的物件。2 具體構件 concretecomponent 角色 定義乙個將要接收附...