趣谈java代理模式

代理模式:为一个对象提供一种代理,以控制对这个对象的访问。分为静态代理和动态代理。

比如我家张艺兴的经纪人就是他的“代理”。

适用场景和优缺点

适用场景

(1)当我们想要隐藏某个类时,可以为其提供代理类
(2)当一个类需要对不同的调用者提供不同的调用权限时,可以使用代理类来实现
(3)当我们要扩展某个类的某个功能时,可以使用代理模式,在代理类中进行简单扩展
(4)spring的aop就是使用了动态代理。

优点

(1)将代理对象与真实被调用的目标对象分离,降低了系统的耦合度
(2)保护目标对象
(3)增强目标对象

缺点

(1)会造成系统设计中类的数目增加
(2)在客户端和目标对象之间增加了代理对象,会造成请求的处理速度变慢
(3)增加系统的复杂度

实现

类图

在这里插入图片描述

代码实现

请您移步到这篇博客,此篇博客的优秀程度定不会让您失望:【java反射】简单说说静态代理和动态代理

发布了258 篇原创文章 · 获赞 769 · 访问量 34万+

猜你喜欢

转载自blog.csdn.net/qsbbl/article/details/96995251