装饰器模式:
ConcreteComonent对象和Decorator装饰对象可以合并成一个 主要区别就是定义上
ConcreteComonent可以理解成原对象 而Decorator可以理解为为原对象起装饰作用的装饰器
其核心主要就是在装饰器抽象父类里面保存一个Componment抽象(Operation方法就是原对象和装饰器的主要使用方法)然后装饰器里面的Operation执行本装饰器的方法后调用注入的Comonent的Operation 注入的Comonent的Operation 里面执行自己的代码后 又执行注入的Operation
总结就是一句话能表示 俄罗斯套娃
一般的教程都会有一个专门的方法SetComonent来注入 比较难以理解 如果改成构造方法注入 调用逻辑就会非常清晰了
ConcreteDecoratorB d2 = new ConcreteDecoratorB(new ConcreteDecoratorA(new ConcreteComponent()));
d2.Operation();