装饰设计模式(JavaSE流部分涉及)

装饰设计模式

装饰(Decorator)模式的定义:指在不改变现有对象结构的情况下,动态地给该对象增加一些职责(即增加其额外功能)的模式,它属于对象结构型模式。

  • 采用装饰模式扩展对象的功能比采用继承方式更加灵活。
  • 可以设计出多个不同的具体装饰类,创造出多个不同行为的组合。

其主要缺点是:装饰模式增加了许多子类,如果过度使用会使程序变得很复杂。

  • 代码
public interface Coder {
    public void code();
}

public class Student implements Coder {
    @Override
    public void code() {
        System.out.println("javaSE");
        System.out.println("javaWeb");
    }
}

public class HighStudent implements Coder {
	//1.获取被包装类的引用
    private Student s;
	//2.通过构造函数创建对象的时候,传入被包装的对象
    public HighStudent(Student s){
        this.s = s;
    }
	//对原有功能尽行升级
    @Override
    public void code() {
        s.code();
        System.out.println("MySQL");
        System.out.println("SSM");
    }
}

发布了53 篇原创文章 · 获赞 13 · 访问量 2239

猜你喜欢

转载自blog.csdn.net/qq_36821220/article/details/105087836
今日推荐