idea使用jclasslib插件查看字節(jié)碼
安裝jclasslib插件
直接在idea的插件列表中搜索 jclasslib 插件并安裝:

使用
我們寫一個自動裝箱和拆箱的代碼
public class Main {
public static void main(String[] args) {
Integer x = 1;
int y = x;
}
}
點(diǎn)擊頂部菜單中的 build->;編譯當(dāng)前文件

然后點(diǎn)擊菜單中的 view ->show Bytecode with Jclasslib

即可在右側(cè)窗口中看到字節(jié)碼

通過字節(jié)碼我們可以看到 自動拆裝箱實(shí)際就是編譯器的語法糖,實(shí)際在字節(jié)碼層面仍然執(zhí)行valueOf和initValue
0 iconst_1 # 取出常量 1 1 invokestatic #2 <java/lang/Integer.valueOf : (I)Ljava/lang/Integer;> # 執(zhí)行Integer的valueOf靜態(tài)方法 4 astore_1 # 存儲引用到棧幀的局部變量表 slot1 5 aload_1 # 加載變量1到操作數(shù)棧 6 invokevirtual #3 <java/lang/Integer.intValue : ()I> # 執(zhí)行對象的intValue方法 9 istore_2 # 值存儲在局部變量表中的slot2 10 return
以上就是idea使用jclasslib插件查看字節(jié)碼的詳細(xì)內(nèi)容,更多關(guān)于idea jclasslib查看字節(jié)碼的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
SpringBoot結(jié)合Redis實(shí)現(xiàn)緩存管理功能
本篇文章主要介紹spring boot緩存管理機(jī)制及相關(guān)概念,以及如何結(jié)合Redis實(shí)現(xiàn)緩存管理,文中通過代碼示例給大家介紹的非常詳細(xì),具有一定的參考價值,需要的朋友可以參考下2024-01-01
淺談spring的重試機(jī)制無效@Retryable@EnableRetry
這篇文章主要介紹了淺談spring的重試機(jī)制無效@Retryable@EnableRetry,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-09-09
Java使用POI實(shí)現(xiàn)excel文件的導(dǎo)入和導(dǎo)出
這篇文章主要為大家詳細(xì)介紹了Java如何使用POI實(shí)現(xiàn)excel文件的導(dǎo)入和導(dǎo)出功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-12-12
簡單了解Java刪除字符replaceFirst原理及實(shí)例
這篇文章主要介紹了簡單了解Java刪除字符replaceFirst原理及實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-05-05
Java連接mysql數(shù)據(jù)庫的詳細(xì)教程(推薦)
這篇文章主要介紹了Java連接mysql數(shù)據(jù)庫的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08
基于Java反射技術(shù)實(shí)現(xiàn)簡單IOC容器
這篇文章主要介紹了基于Java反射技術(shù)實(shí)現(xiàn)簡單IOC容器,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-07-07

