Gorilla带您学java之装饰者模式

装饰者模式

作用:对对象的原有功能进行升级
书写步骤
1.明确被装饰的对象
2.将被装饰的对象 通过构造方法传入装饰类
装饰类中 肯定有一个成员变量 就是被装饰的对象
3.拥有被装饰的对象 相当于可以调用该对象中的所有方法
就可以对该方法进行升级

// 在校学生
class Student implements Study{

    @Override
    public void Study() {
        System.out.println("在校学习了 c++ c# c");
    }
}
// 装饰类
class LOStudent implements Study{
    // 将被装饰者声明为成员变量
    private Student student;
    // 提供有参的构造方法
    public LOStudent() {
        super();
    }
    public LOStudent(Student student) {
        super();
        this.student = student;
    }
    // 对方法进行装饰(升级)
    @Override
    public void Study() {
        // 调用原有的学习方法
        student.Study();
        // 装饰新功能
        System.out.println("又学习了 java h5 U3D");
    }
    
}

以上就是一个简单的装饰者模式栗子。

猜你喜欢

转载自blog.csdn.net/qq_37113621/article/details/82748461