小言_互联网的博客

教你IDEA中如何快速查看Java字节码,必须点赞收藏!!!

229人阅读  评论(0)

开发中如果我们想看JVM虚拟机怎么编译我们的Java文件,生成字节码的,用IDEA工具就可以查看!!

1、javap的参数

  -help  --help  -?        输出此用法消息
  -version                 版本信息
  -v  -verbose             输出附加信息
  -l                       输出行号和本地变量表
  -public                  仅显示公共类和成员
  -protected               显示受保护的/公共类和成员
  -package                 显示程序包/受保护的/公共类和成员 (默认)
  -p  -private             显示所有类和成员
  -c                       对代码进行反汇编
  -s                       输出内部类型签名
  -sysinfo                 显示正在处理的类的系统信息 (路径, 大小, 日期, MD5 散列)
  -constants               显示静态最终常量
  -classpath <path>        指定查找用户类文件的位置
  -bootclasspath <path>    覆盖引导类文件的位置

因为我们知道java文件进入虚拟机的一个大致过程是:

A.java文件,经过编译后,生成.class文件,这个.class文件是个二进制文件,你没法看得懂,只有虚拟机能看得明白,因为虚拟机有一个字节码表,而作为程序员是看不懂这些16进制的文件的,你这可以背下来???

因为我这里用到的是Notepad++,需要安装一个HEX-Editor插件;下面的东西我只知道一个ca fe ba be.....

所以class文件就长这个样子,那么这些什么00 07,这些16进制的表示,对应代表着什么呢?这个以后再说,总之你目前看不懂就是了

那么java提供了可以解析class文件称为字节码文件的工具,把这个class文件,翻译成字节码文件,告诉虚拟机你要去做什么操作。

所以javap的命令,就是这样来的。java parser!!

 

2、配置IDEA

然后+号,这三行照写下

  • $JDKPath$\bin\javap.exe
  • -verbose -p -c $FileClass$
  • $OutputPath$

然后OK点击。

这样就能看到编译的细节了。

是不是很方便???

 


转载:https://blog.csdn.net/qq_31821733/article/details/117198235
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场