Android設計模式 20 裝飾模式

2021-10-17 23:07:26 字數 664 閱讀 7326

在android中有以下繼承關係,context是抽象類,而下面三者這可以看作其裝飾類

以人們穿衣服為例

1. 建立乙個people類,只有乙個通用的方法--穿**

2. 建立乙個裝飾器基類

3. 建立裝飾器的實現類,乙個土豪裝飾器,乙個乞者裝飾器

4. 建立people例項,並分別用不同的裝飾器裝飾

這樣同乙個例項物件可以自由的切換裝飾器,對其穿著進行不同的擴充套件,耦合性很低,而且不會影響people類本身的繼承體系,people可以繼續衍生出其他子類,如程式設計師,產品經理等,還可以復用上面的裝飾器進行裝飾

Java 設計模式 20 裝飾模式

package cn.et 遠端 public inte ce rangedweaponpackage cn.et 炮public class cannon implements rangedweapon package cn.et 槍public class gun implements rang...

Android小知識 設計模式(裝飾模式)

裝飾模式是結構型設計模式之一,其在不必改變類檔案和使用繼承的情況下,動態地擴充套件乙個物件的功能,是繼承的替代方案之一。它通過建立乙個包裝物件,也就是裝飾來包裹真實的物件。裝飾模式定義 動態地給乙個物件新增一些額外的職責,就增加功能來說,裝飾模式比生成子類更為靈活。裝飾模式的結構圖 裝飾模式中的角色...

Java設計模式之20 裝飾模式(1)

裝飾模式是一種結構型設計模式。其使用一種對客戶端透明的方式,來動態的擴充套件物件的功能。同時,它也是繼承關係的一種替代方案之一。定義 動態地給乙個物件新增一些額外的職責。就增加個來說,裝飾模式比生成子類更為靈活。所以,我們可以在需要透明而且動態地擴充套件類的功能時,所以裝飾模式。1 建立乙個被裝飾的...