前言
学习Java时,查看代码的字节码在许多时候是有所裨益的,因此这里简单分享下如何在IntelliJ内或Windows的命令提示符上查看代码的字节码。
在开始之前,如果对Path及Classpath还不是很清楚的可以看看这篇文章http://blog.csdn.net/weixin_37870009/article/details/79332145 。在使用相关指令时会用到他们。
在Intellij IDEA上查看代码的字节码
1.在IDEA中点击左上角的File->Settings进入到设置界面
2.在里面找到Tools->External Tools,点击上面绿色的”+”添加一个功能。
3.Name选项可随意填写,相当于为这个功能命名,Program选项选择JDK目录中的bin目录下的javap.exe,这是由Sun公司提供的反汇编工具。其他两个选项按照图示填写。其中$Outputpath$表示当前IDEA的java文件编译后的.class文件存储目录,$FileClass$表示当前文件名(不带后缀)。
4.完成后保存好,在你的代码处右键,会看到菜单中多出来一个External Tools的选项,在其中选择你刚添加的功能,点它后就能看到代码的字节码了。
这里不清楚为何会有警告,找了一段时间也找不出来有啥错误,不过能正常运行显示字节码就好了,如果有了解的麻烦告知下。
在CMD中查看代码字节码
1.使用CMD指令需要预先配置好Path及ClassPath。该方法也是使用javap.exe执行。
2.打开cmd,输入javap -c test即可(默认.class文件位于Classpath下)。这里没有警告。
如果不想配置任何环境变量,那就使用绝对路径:
打开CMD,输入”C:\Program Files\Java\jdk-9.0.4\bin\javap.exe” -c C:\Users\Administrator\Desktop\test
注意事项:javap -c反编译文件执行的目标文件是.class文件而不是.java文件,因此在写好程序后需要先编译,在IDE中则需要先运行程序。