状态模式
状态模式定义
允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。
类图
和策略模式很像,但是状态模式允许在 context 中完成状态的切换(也就是可以在context 执行状态的逻辑功能)
状态模式要点
- 状态模式一个状态就是一个类
代理模式
代理模式定义
为另一个对象提供了一个替身来控制对这个对象的访问
代理模式类图
- Subject 接口,提供可调用的方法,让代理类和真正干活的类都实现它
- RealSubject 类,是真正干活的类
- Proxy 类,持有 RealSubject 对象的引用,和客户的交互都是在这个类完成的
动态代理模式概念
目标对象:一个普通的Java对象
代理对象:基于目标对象,替目标对象干活的对象
增强器类:需要对目标对象增强功能
代理对象工厂:用来生产代理对象的