摘要: 第二段话应该能理解 class把他们所有的引用符号放在一个地方——常量池。每一个class文件有一个常量池,每一个被Java虚拟机装载的类或者接口都有一份内部版本常量池,被称作运行时常量池。运行时常量池是特定与实现的数据结构,数据结构映射到class文件中的常量池。因此,当一个类型被首次装载的时候, 阅读全文
posted @ 2022-08-06 23:25 dronff 阅读(180) 评论(0) 推荐(0)
摘要: 首先 java代码 通过jclasslib查看字节码指令 0 iconst_ 1 将1压入操作数栈中 1 istore_1 取操作数栈顶的数字 存入下表为1的局部变量表中 2 bipush 10 将10压入操作数栈中 4 istore_2 取操作数栈顶的数字 存入下表为2的局部变量表中 5 iloa 阅读全文
posted @ 2022-08-06 22:02 dronff 阅读(40) 评论(0) 推荐(0)
摘要: 局部变量表建立在jvm栈的栈帧中,局部变量表最基本的单位是槽(slot),其个数在编译时就已经定好了, 如图 该方法的局部变量表的大小就应该是args+a=2 使用反编译工具jclasslib查看后确实是2 查看局部变量表的详细信息 起始pc是指字节码指令的行号 它与行号共同构成了该变量的作用域 描 阅读全文
posted @ 2022-08-06 20:43 dronff 阅读(114) 评论(0) 推荐(0)