一、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…..

值得收藏!教你如何在IDEA中快速查看Java字节码

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

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

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

二、配置IDEA

值得收藏!教你如何在IDEA中快速查看Java字节码

然后+号,这三行照写下

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

值得收藏!教你如何在IDEA中快速查看Java字节码

然后OK点击。

值得收藏!教你如何在IDEA中快速查看Java字节码

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

值得收藏!教你如何在IDEA中快速查看Java字节码

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。