看了下《深入虚拟机》相关章节,还是存在一些字节码的疑惑
資深大佬 : lqw3030 18
-
前几天咨询了大家字节码相关问题
-
看了一遍《深入理解虚拟机》,部分指令和语法是明白了,但是依然存在一些疑惑
-
在下面字节码中标出了,麻烦懂的朋友指点下
-
多谢了
-
类文件
package core.object_create; public class ObjectTest { private String name="v2"; public void hi(){ int i =777; } }
- 字节码
// class version 56.0 (56) // access flags 0x21 public class core/object_create/ObjectTest { // compiled from: ObjectTest.java // access flags 0x2 private Ljava/lang/String; name // access flags 0x1 public <init>()V L0 //这里在申明什么 LINENUMBER 3 L0 //这个语法是啥意思 ALOAD 0 INVOKESPECIAL java/lang/Object.<init> ()V L1 LINENUMBER 4 L1 ALOAD 0 LDC "v2" PUTFIELD core/object_create/ObjectTest.name : Ljava/lang/String; RETURN L2 LOCALVARIABLE this Lcore/object_create/ObjectTest; L0 L2 0 MAXSTACK = 2 MAXLOCALS = 1 // access flags 0x1 public hi()V L0 LINENUMBER 7 L0 SIPUSH 777 ISTORE 1 L1 LINENUMBER 8 L1 RETURN L2 LOCALVARIABLE this Lcore/object_create/ObjectTest; L0 L2 0 //这句 LOCALVARIABLE i I L1 L2 1 //以及这句分别在申明什么 MAXSTACK = 1 MAXLOCALS = 2 }
大佬有話說 (2)