1.通过实现动态代理模式生成$Proxy.class文件,逻辑如下:
Paste_Image.png
2.接下来通过java 反编译器查看$Proxy.class.可以看到以下几个点:
Paste_Image.png3.然后通过查看源代码查明上图中的 h 对象的来源,也就是说Proxy和InvocationHandler之间的关系,如下:
Paste_Image.png4.查看InvocationHandler中的invoke方法
Paste_Image.png好了,动态代理java代码层面上的东西我就讲解到这,如果想知道更多关于类加载原理,可以查看InvocationHandler中其它方法实现!
把自己成长经历上学到的东西总结起来,只是希望一段时间之后,自己看到这篇文章能知其然知其所以然;
网友评论