首页 > 代码库 > java设计模式之装饰器模式
java设计模式之装饰器模式
装饰器模式的应用场景:
1、需要扩展一个类的功能。
2、动态的为一个对象增加功能,而且还能动态撤销。(继承不能做到这一点,继承的功能是静态的,不能动态增删。)
源接口:
1 public interface Sourceable { 2 3 void method(); 4 }
Source类:
1 public class Source implements Sourceable { 2 @Override 3 public void method() { 4 System.out.println("source.method()..."); 5 } 6 }
装饰器类:
1 public class Decorator implements Sourceable { 2 3 private Sourceable source; 4 public Decorator(Sourceable source) { 5 this.source = source; 6 } 7 8 @Override 9 public void method() { 10 System.out.println("Decorator decorate 1"); 11 source.method(); 12 System.out.println("Decorator decorate 2"); 13 } 14 15 public static void main(String[] args) { 16 Sourceable source = new Source(); 17 Sourceable sourceable = new Decorator(source); 18 sourceable.method(); 19 } 20 }
java设计模式之装饰器模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。