设计模式之代理模式
定义
Provide a surrogate or placeholder for another object to control access to it.
为其他对象提供一种代理以控制对这个对象的访问。
类图
抽象目标类接口:Subject
定义真正目标类:RealSubject
定义代理类:RealSubjectProxy
代码实现
可以通过构造方法的方式去传入目标类的对象:
在代理类中添加一些方法:
代理模式 vs 装饰器模式
代理模式关注于对对象的访问控制,而装饰器模式关注于给原来的对象添加一些没有的职责和能力(功能增强)。
参考资料:五分钟学设计模式.11.代理模式