代理设计模式
定义
为目标对象创建代理对象以提供一种代理机制,让目标对象能控制目标对象的访问,可以在不改变目标对象的情况下为目标对象添加额外的功能。
代理模式分类
-
静态代理模式
在程序编译器就确定了被代理对象
-
动态代理模式
在程序运行期才能确定被代理对象(运用反射机制动态地为目标类创建代理类)
代理模式优缺点
优点
-
在客户对象和目标对象之间起到一个中介作用和保护目标对象
-
可以扩展目标对象的功能
-
将客户对象和目标对象分离,降低耦合度增加程序可扩展性
缺点
-
增加类的数量
-
客户对象和目标对象之间增加一个代理对象,会增加请求处理速度变慢
-
一定程度增加了系统复杂度
使用场景
-
远程代理:为一个位于不同网络计算机的对象提供一个本地的代理
-
虚拟代理:需要创建一个大的对象,先创建一个消耗较小的对象表示,真实对象被需要时才创建。
-
安全代理:控制对真实对象的访问权限,实现权限管理和安全性。
-
智能指针:用于调目标对象时,代理附加额外功能。
-

浙公网安备 33010602011771号