idea jclasslib查看字节码
编程小龙 人气:0安装jclasslib插件
直接在idea的插件列表中搜索 jclasslib 插件并安装:
使用
我们写一个自动装箱和拆箱的代码
public class Main { public static void main(String[] args) { Integer x = 1; int y = x; } }
点击顶部菜单中的 build->;编译当前文件
然后点击菜单中的 view ->show Bytecode with Jclasslib
即可在右侧窗口中看到字节码
通过字节码我们可以看到 自动拆装箱实际就是编译器的语法糖,实际在字节码层面仍然执行valueOf和initValue
0 iconst_1 # 取出常量 1 1 invokestatic #2 <java/lang/Integer.valueOf : (I)Ljava/lang/Integer;> # 执行Integer的valueOf静态方法 4 astore_1 # 存储引用到栈帧的局部变量表 slot1 5 aload_1 # 加载变量1到操作数栈 6 invokevirtual #3 <java/lang/Integer.intValue : ()I> # 执行对象的intValue方法 9 istore_2 # 值存储在局部变量表中的slot2 10 return
加载全部内容