裝飾器模式

2021-09-25 10:11:00 字數 912 閱讀 6549

裝飾器

使用通用介面,進行子類拓展

1.定義抽象介面,定義拓展和原本類的通用方法

2.定義具體原本類繼承抽象介面,並重寫抽象方法

3.定義抽象裝飾器類繼承抽象介面,內部設介面成員變數

並在構造器中進行初始化原本類,並定義拓展類的通用抽象方法(可以沒有)

4.定義具體裝飾器類繼承抽象父類,重寫構造器和抽象方法

5.客戶端使用抽象介面,傳入具體原本類,在裝飾器類下呼叫函式

1.定義抽象介面,定義拓展和原本類的通用方法

public inte***ce picture

2.定義具體原本類繼承抽象介面,並重寫抽象方法

class scenepicture implements picture

} class cartoonpicture implements picture

}3.定義抽象裝飾器類繼承抽象介面,內部設成員變數

並在構造器中進行初始化原本類,並定義拓展類的通用抽象方法(可以沒有)

abstract class effecteddecorate implements picture

}4.定義具體裝飾器類繼承抽象父類,重寫構造器和抽象方法

class whiteningdecorate extends effecteddecorate

@override

public void display()

} class blackendecorate extends effecteddecorate

@override

public void display()

}5.客戶端使用抽象介面,傳入具體原本類,在裝飾器類下呼叫函式

public static void main(string args)

裝飾器模式

大話設計模式 裝飾器模式 為已有功能動態地新增更多功能,當系統需要新功能,向舊的類中新增新功能,裝飾了原有類的核心職責和行為,而不改變它們 就像包裝袋一樣,有 的包裝袋包裝之前裝好東西的包裝袋 ifndef clothes h define clothes h include using names...

裝飾器模式

裝飾器設計模式 對真實物件動態的新增功能 抽象元件 author zhangjianbin public inte ce icar 俱體構件物件 真實的物件 author zhangjianbin class car implements icar 裝飾器物件 author zhangjianbin...

裝飾器模式

一 概念 裝飾模式能夠實現動態的為物件新增功能,是從乙個物件外部來給物件新增功能。通常給物件新增功能,要麼直接修改物件新增相應的功能,要麼派生對應的子類來擴充套件,抑或是使用物件組合的方式。顯然,直接修改對應的類這種方式並不可取。在物件導向的設計中,而我們也應該 盡量使用物件組合,而不是物件繼承來擴...