23种设计模式学习之装饰者模式

装饰着模式是动态的增强类的功能,要求被装饰的类必选实现了某个接口

被装饰类接口

public interface Source {
     void method1();
}

 被装饰类

public class SourceImpl implements Source {
    @Override
    public void method1() {
        System.out.println("2");
    }
}

 装饰类

public class Decorator implements Source {
    private SourceImpl source;

    public Decorator(SourceImpl source) {
        super();
        this.source = source;
    }

    @Override
    public void method1() {
        System.out.println(1);
        source.method1();
        System.out.println(3);
    }
}

 实例

public class Demo {
    public static void main(String[] args) {
        Source source =new Decorator(new SourceImpl());
        source.method1();
    }
}

 

posted @ 2018-01-11 18:28  我_会飞的鱼  阅读(119)  评论(0编辑  收藏  举报