裝飾模式就是給乙個物件增加一些新的功能,而且是動態的,要求裝飾物件和被裝飾物件實現同乙個介面(或抽象類),裝飾物件持有被裝飾物件的例項.
public
inte***ce
sourceable
public
class
source
implements
sourceable
}
public
class
decorator
implements
sourceable
@override
public
void
method()
}
測試類:
public
class
decoratortest
}
輸出:
before decorator!
the original method!
after decorator!
裝飾器模式的應用場景:
1、需要擴充套件乙個類的功能。
2、動態的為乙個物件增加功能,而且還能動態撤銷。(繼承不能做到這一點,繼承的功能是靜態的,不能動態增刪。)
缺點:產生過多相似的物件,不易排錯!
我是乙個菜鳥
我是公司的乙個erp軟體實施者,當時公司決定讓我來實施並不是因為我對erp軟體有多麼了解,也不是因為會什麼程式設計,只是因為我對物流管理較為熟悉,在公司也呆過多年,對許多流程也比較清楚.所以,我才作為整個公司的erp軟體實施.我以前是學管理的,但對計算機還比較熱衷,至於程式設計卻一竅不通,沒有任何基...
我是乙個硬碟
我是乙個硬碟,st380021a,在乙個普普通通的台式電腦裡工作。別人總認為我們是高科技白領,工作又乾淨又體面,似乎風光得很。也許他們是因為看到潔白漂亮的機箱才有這樣的錯覺吧。其 實象我們這樣的小台式電腦,工作環境狹迫,裡面的灰塵嚇得死人。每天生活死水一潭,工作機械 重複。跑跑文書處理看看電影還凑活...
我是乙個硬碟
我是乙個硬碟 我是乙個硬碟,st380021a,在乙個普普通通的台式電腦裡工作。別人總認為我們是高科技白領,工作又乾淨又體面,似乎風光得很。也許他們是因為看到潔白漂亮的機箱才有這樣的錯覺吧。其實像我們這樣的小台式電腦,工作環境狹迫,裡面的灰塵嚇得死人。每天生活死水一潭,工作機械重複。跑跑文書處理看看...