教你查看 Java 字节码

冷暖自知 提交于 2020-01-18 22:52:14

在我们工作、学习、以及研究 JVM 过程当中,不可避免的要查看 Java 字节码,通过查看字节码可以了解一个类的编译结果,也能通过编译器层面来分析一个类的性能。
字节码文件是不能直接打开的,下面给大家介绍我知道的两种查看字节码文件的三种方式。

  1. 使用 javap 命令查看字节码
    命令格式如下:
javap -c xxx.class

该命令是JDK 提供的,直接操作一把:

$ javap -c Test.class
Compiled from "Test.java"
public class com.test.Test {
  public com.test.Test();
    Code:
       0: aload_0
       1: invokespecial #8                  // Method java/lang/Object."<init>":()V
       4: return

  public static void main(java.lang.String[]);
    Code:
       0: return
}

如上所示,可以看到 Test 类的的字节码。

  1. Intellij IDEA 中查看字节码
    Intellij IDEA 直接集成了一个工具菜单,可以直接查看字节码,打开 ByteCode 插件窗口方法如下:

View -> Show bytecode

若看不到字节码,则是当前窗口类没有被编译,编译一下即可。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!