是一種常見的設計模式,個人理解裝飾就是錦上添花之意,即在原有功能基礎上增加新功能。
這個模式的設計思想和實現方式比較簡單,直接上圖。
以上uml中核心的裝飾功能是在 concretedecorator 的 operation() 中實現。
//基礎介面
public inte***ce component
//具體實現類
public class concretcomponent implements component
}//裝飾類
public class decorator implements component
public void operation()
}//具體裝飾類
public class concretedecorator extends decorator
public void operation()
}
具體使用的**如下:
public class decoratortest
}
設計模式 結構型模式 裝飾模式
設計模式 結構型模式 裝飾模式 以成績單需要家長簽字為要求。成績單類圖 抽象成績單 public abstract class schoolreport 下面書寫四年級成績單 public class fouthgradeschoolreport extends schoolreport 家長簽名 ...
設計模式 結構型模式 裝飾模式
在不改變現有物件結構的情況下,動態地給該物件增加一些職責 即增加其額外功能 的模式,它屬於物件結構性模式。優點 缺點主要缺點是 會增加很多子類,過度使用會增加程式的複雜性。結構主要角色 類圖 實現inte ce component class concretecomponent implements...
裝飾模式(結構型模式)
裝飾模式是一種動態的給類中新增新行為的設計模式,裝飾模式比生成子類更為靈活,可以給某個物件而不是整個類新增一些功能。值得注意的是裝飾模式的裝飾類也繼承介面類,同時他也有介面類的指標指向他需要裝飾的具體類。外表看著像is a的關係,實際也是has a的關係。實際應用中裝飾類可以同時裝飾幾個具體類。可以...