java基础之---动态代理
2024-01-09 10:36:29
1、代理是什么?
在不改变源代码的情况下,对类进行了功能等扩展。在代理类的前后方法添加任何你想要添加的内容。
2、静态代理跟动态代理区别
静态代理是在编译期确定。
动态代理需要在运行期确定的。反射是动态代理的一种。经常被用在框架中,比如spring的AOP、servlet的filter等。
3、动态代理分为2类
jdk动态代理
1、介绍
是通过反射来接受被代理的类。
要求:被代理类必须实现一个接口。
核心是invocationHandler接口和Proxy类
关键代码是:Proxy.newProxyInstance(三个参数)
cglib动态代理
不需要一个实现的接口,底层采用Enhancer,在运行期动态生成一个子类。
注意:final类不能用cglib动态代理,因为final是不能再被继承的,不能有子类。
Enhancer.create(两个参数);
文章来源:https://blog.csdn.net/tuantuanyua/article/details/135415458
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!