设计模式之装饰者设计模式

来源:互联网 发布:无锡房价 知乎 编辑:程序博客网 时间:2024/05/08 04:05

装饰模式指的是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。

package other;/*:一家三口每个人都会工作,儿子的工作就是画画,母亲的工作就是在儿子的基础上做一个增强,不单止可以画画,还可以上涂料。爸爸的工作就是在妈妈基础上做了增强,就是上画框。*/interface Work{public void work();}class Son implements Work{@Overridepublic void work() {System.out.println("画画...");}}class Mather implements Work{//需要被增强的类。Work worker;public Mather(Work worker){this.worker = worker;}@Overridepublic void work() {worker.work();System.out.println("给画上颜色..");}}class Father implements Work{//需要被增强的类的引用Work worker;public Father(Work worker){this.worker = worker;}@Overridepublic void work() {worker.work();System.out.println("上画框...");}}public class Demo3 {public static void main(String[] args) {Son s = new Son();//s.work();Mather m = new Mather(s);//m.work();Father f = new Father(s);f.work();}}


原创粉丝点击