IDEA使用jclasslib Bytecode Viewer查看jvm字节码

学习jvm的时候,想查看字节码和局部变量表,可以使用idea安装jclasslib Bytecode View插件查看。

(1)安装工具:

安装完成后需要重启idea.

(2)准备一段代码,编译运行

java 复制代码
package com.test.bytecodeview;

public class ByteCodeView {

    public static void main(String[] args) {
        int a = 10 ;
        int b = 20 ;
        int c = a +b;
        System.out.println(c);
    }
}

(3)找到编译后的class文件,选择view,Show Bytecode With jclasslib

(4) 查看字节码

这里有行号表(LineNumberTable)和局部变量表(LocalVariableTable)

局部变量表由Start(起始PC)、Slot(序号)、Name(名称)、Length(长度)构成。

操作数栈存储每步骤所有的相关的值。例如i

java 复制代码
int c = a + b ; 

操作数栈会放入a的值(10),b的值(20)
a与b相加获得30.
操作舒栈写入30.
系统将30赋予c
相关推荐
空空kkk16 小时前
SpringMVC——IO笔记
java·io
lcu11117 小时前
Java 学习40:继承
java
p***q7817 小时前
【保姆级教程】apache-tomcat的安装配置教程
java·tomcat·apache
2501_9411486117 小时前
C++实时数据处理实战:多线程与异步IO结合高性能代码解析
java·后端·struts
u***u68517 小时前
C++在系统中的异常处理
java·开发语言·c++
空空kkk17 小时前
SpringMVC——拦截器
java·数据库·spring·拦截器
文涛是个小白呀17 小时前
Java集合大调研
java·学习·链表·面试
我也爱吃馄饨18 小时前
写的webpack插件如何适配CommonJs项目和EsModule项目
java·前端·webpack
Seven9718 小时前
剑指offer-43、左旋转字符串
java
梵得儿SHI18 小时前
(第七篇)Spring AI 基础入门总结:四层技术栈全景图 + 三大坑根治方案 + RAG 进阶预告
java·人工智能·spring·springai的四大核心能力·向量维度·prompt模板化·向量存储检索