java設計模式之裝飾設計模式

2021-07-24 16:38:23 字數 1029 閱讀 3501

裝飾設計模式:

裝飾設計模式就是給乙個物件增加一些新的功能,而且是動態的。要求裝飾物件和被裝飾物件實現同乙個介面,裝飾物件持有被裝飾物件的例項

設計思路:

第一步:定義介面action,在介面中提供乙個方法work

第二步:定義被裝飾類child,實現介面action

第三步:定義裝飾類adult,實現介面action,並在構造中持有child的物件

技巧性的東西:在裝飾類中持有child類的物件的時候,採用多型的形式去實現

具體編碼實現:

定義介面action,在介面中提供乙個方法work:

/**

* 定義介面action,在介面中提供乙個方法work

* * @author zdliu

* */

public inte***ce action

定義被裝飾類child,實現介面action

/**

* 定義被裝飾類child,實現介面action

* * @author zdliu

* */

public class child implements action

}

定義裝飾類adult,實現介面action,並在構造中持有child的物件

/**

* 定義裝飾類adult,實現介面action,並在構造中持有child的物件

* * @author zdliu

* */

public class adult implements action

@override

public void work()

}

測試類:

public class test 

}

控制台輸出資訊:

被裝飾的內容

在這裡進行裝飾**的編寫,給被裝飾類拓展功能

Java設計模式之裝飾模式

裝飾模式是在不必改變原類檔案和使用繼承的情況下,動態的擴充套件乙個物件的功能。它是通過建立乙個包裝物件,也就是裝飾來包裹真實的物件。裝飾模式的特點 1 裝飾物件和真實物件有相同的介面。這樣客戶端物件就可以以和真實物件相同的方式和裝飾物件互動。2 裝飾物件包含乙個真實物件的索引 reference 3...

Java設計模式之裝飾模式

動態的給乙個物件新增一些額外的職責.就增加功能來說,裝飾模式相比生成子類更為靈活.需要透明且動態的擴充套件類的功能時.其中涉及到的角色有 這裡模擬一下人穿衣服的場景,沒錢的穿便宜衣服,有錢的穿貴衣服 首先定義人的抽象類 public abstract class person public clas...

設計模式之裝飾模式 Java

23種設計模式之一,英文叫decorator pattern,又叫裝飾者模式。裝飾模式是在不必改變原類檔案和使用繼承的情況下,動態地擴充套件乙個物件的功能。它是通過建立乙個包裝物件,也就是裝飾來包裹真實的物件。component是定義乙個物件介面,可以給這些物件動態新增職責,concretecomp...