- 特点:代理,顾名思义就是一个类代替某一个类做某事。为什么会被代理,主要是因为被代理类负担过重,可以通过代理间接处理事务。在设计思想和实现原理上会与Adapter模式和Decorator模式相似之处,相同的透明性和事务的委托。
- 角色:
角色名称 | 角色职责 |
---|---|
Subject(主体) | 定义Proxy和RealSubject角色的一致性接口 |
Proxy(代理人) | 实现Subject接口,处理来之Client的请求,有必要时生成RealSubject角色实例,然后处理相关事务 |
RealSubject(实际的主体) | 实现Subject接口,为Proxy提供事务API |
Client(请求者) | 使用Proxy模式的角色。 |
-
角色关系:
Proxy.png 代码示例:Proxy
以上文献参考:《图解设计模式》