結構型設計模式之裝飾模式

2021-10-07 09:34:20 字數 718 閱讀 9227

定義:動態地給乙個物件增加一些額外的職責,就增加物件功能來說,裝飾模式比生成子類更靈活

**實現:

(1)抽象構建類

public

inte***ce

transform

(2)具體構建類

public

final

class

car implememts transform

public

void

move()

}

(3)抽象裝飾類

public

class

changer

implements

transform

public

void

move()

}

(4)具體裝飾類

public

class

robot

extends

changer

//新增的方法,起到「裝飾」作用

public void

say(

)}

(5)客戶端**

public

class

client

結構型設計模式 裝飾模式

裝飾模式動態地給乙個物件新增一些額外的職責,就增加功能來說,它比生成子類更靈活。也可以這樣說,裝飾模式把複雜類中的核心職責和裝飾功能區分開了,這樣既簡化了複雜類,有去除了相關類中重複的裝飾邏輯。裝飾模式沒有通過繼承原有類來擴充套件功能,但卻達到了一樣的目的,而且比繼承更加靈活,所以可以說裝飾模式是繼...

結構型設計模式 裝飾模式

先列舉乙個生活中的場景。假如我們買了一套房 買不起。但是是乙個毛胚房 指沒有任何裝修的房子 只能住。那麼我們為了讓房子變得溫馨舒適,就要進行裝修了,這樣沒有改變房子原本用來居住的功能,還增加了很多新的功能 比如做飯 那麼這一期的裝飾模式就是基於這樣的動機,在不改變原有功能的情況下新增新功能。那麼給乙...

快速理解設計模式之結構型設計模式(裝飾模式)

宣告 文章裡面某些例子只代表我個人的觀點,分享出來是希望能夠幫助大家理解設計模式,如果認為比較牽強還請手下留情,程式設計師不容易啊 在前面兩篇文章中我們講解了建立型設計模式,所謂建立就是建立物件,各種設計模式呢就是給我們建立物件提供了更好的方法,讓我們的 設計更加合理,符合oo 而不是流線式的程式設...