在我們作業、學習、以及研究 JVM 程序當中,不可避免的要查看 Java 位元組碼,通過查看位元組碼可以了解一個類的編譯結果,也能通過編譯器層面來分析一個類的性能,
位元組碼檔案是不能直接打開的,下面堆疊長教大家幾種簡單的方法如何查看 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 類的的位元組碼,
2、Intellij IDEA 中查看位元組碼
Intellij IDEA 直接集成了一個工具選單,可以直接查看位元組碼,打開 ByteCode 插件視窗方法如下:
View -> Show bytecode


如圖所示,可以看到 String 類的的位元組碼,
是不是很方便?
如果看不到這個選單,那可能你當前的類沒有編譯,需要你編譯一下,
不會用 Intellij IDEA 的可以關注公眾號:Java技術堆疊,在后臺回復:IDEA,可以獲取堆疊長整理的歷史教程,都是無廢話干貨,
想當初從 Eclipse 轉 IDEA 數次都失敗,現在早習慣了,說實話寫代碼是真智能,基友搭配,效率翻倍,
3、Eclipse 中查看位元組碼
在 Eclipse 中查看位元組碼稍顯麻煩,需要安裝插件,并打開插件視窗,安裝和使用方式如下:

Name: bytecode
Location: http://andrei.gmxhome.de/eclipse
安裝完后需要重啟 Eclipse 才能生效,
Eclipse 打開 ByteCode 插件視窗:
Window-> Show View -> Other -> Java -> Bytecode

如圖所示,可以看到 String 類的的位元組碼,
當然,市面上還有很多其他的小工具可以查看位元組碼,這里就不再一一介紹了,有興趣的可以去了解下,堆疊長介紹的這三種方式應該夠用了吧,
看完有沒有漲姿勢呢?
老鐵,可以拿出去裝逼了,在看、轉發一波!
推薦去我的博客閱讀更多:
1.Java JVM、集合、多執行緒、新特性系列教程
2.Spring MVC、Spring Boot、Spring Cloud 系列教程
3.Maven、Git、Eclipse、Intellij IDEA 系列工具教程
4.Java、后端、架構、阿里巴巴等大廠最新面試題
覺得不錯,別忘了點贊+轉發哦!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/179617.html
標籤:Java
下一篇:網路編程雜談之TCP協議
