本文共 698 字,大约阅读时间需要 2 分钟。
平凡也就两个字: 懒和惰;
成功也就两个字: 苦和勤; 优秀也就两个字: 你和我。 跟着我从0学习JAVA、spring全家桶和linux运维等知识,带你从懵懂少年走向人生巅峰,迎娶白富美! 关注微信公众号【 IT特靠谱 】,每一篇文章都是心得总结,跟我学习你就是大牛!
jdk中对jdk动态代理提供了默认支持,使用jdk动态代理的步骤如下:
1)定义代理接口(ISubject)。jdk动态代理不能创建非接口实现类的代理,因为动态生成的代理类的class字节码文件反编译后代理类会继承Proxy类并自定义的代理接口,如果委托类继承了抽象类或委托类是普通类,那么就违反java单继承的原则!!
2)定义委托类,实现代理接口和接口方法; 3)实现InvocationHandler接口来自定义自己的InvocationHandler; 4)通过Proxy.newProxyInstance()方法创建代理对象并实例化动态代理类对象后返回; 5)测试jdk动态代理类:通过代理对象调用代理方法;
创建代理接口类:ISubject.java
创建代理类:SubjectImpl.java
自定义MyInvocationHandler类:MyInvocationHandler.java
测试类:Main.java
如果想要深入追踪学习jdk动态代理的源码,关注下面公众号,获得你想要的一切~
转载地址:http://eupgf.baihongyu.com/