JDK动态代理文件$Proxy0.class的生成和查看

网上讲了好多种方法,但经过测试,都不太中意,下面结合自己的实践给大家介绍一下JDK动态代理文件如何生成和查看

背景条件

idea中JDK动态代理文件的生成和查看

demo介绍

JDK动态代理文件的生成有两个条件:

1、必须在main方法中执行,直接用junit的test方法调用无法生成

2、在main方法最前面增加System.getProperties().put("sun.misc.ProxyGenerator.saveGeneratedFiles","true"); 配置,这样会输出代理class文件

JDK动态代理文件$Proxy0.class的生成和查看_第1张图片

JDK动态代理文件$Proxy0.class的生成和查看_第2张图片

JDK动态代理文件$Proxy0.class的生成和查看_第3张图片

JDK动态代理文件$Proxy0.class的生成和查看_第4张图片

代理class文件查看

代理class的生成路径是在idea的工作空间下的 com\sun\proxy 目录中,如下图所示:

JDK动态代理文件$Proxy0.class的生成和查看_第5张图片

注意:切记 $Proxy0.class 文件和源代码不在同一个目录中

查看 $Proxy0.class 文件内容,使用反编译工具(jd-gui)查看如下图所示:

JDK动态代理文件$Proxy0.class的生成和查看_第6张图片

JDK动态代理文件$Proxy0.class的生成和查看_第7张图片

你可能感兴趣的:(JDK)