1.6 Method
信息
表示方法数量,本类为
2
0000660 29 56 00 21 00 05 00 06 00 00 00 00
00 02
00 01
一个方法由 访问修饰符,名称,参数描述,方法属性数量,方法属性组成
红色代表访问修饰符(本类中是
public
)
蓝色代表引用了常量池
#07
项作为方法名称
绿色代表引用了常量池
#08
项作为方法参数描述
黄色代表方法属性数量,本方法是
1
红色代表方法属性
00 09
表示引用了常量池
#09
项,发现是【
Code
】属性
00 00 00 2f
表示此属性的长度是
47
00 01
表示【操作数栈】最大深度
00 01
表示【局部变量表】最大槽(
slot
)数
00 00 00 05
表示字节码长度,本例是
5
2a b7 00 01 b1
是字节码指令
00 00 00 02
表示方法细节属性数量,本例是
2
00 0a
表示引用了常量池
#10
项,发现是【
LineNumberTable
】属性
00 00 00 06
表示此属性的总长度,本例是
6
00 01
表示【
LineNumberTable
】长度
00 00
表示【字节码】行号
00 04
表示【
java
源码】行号
00 0b
表示引用了常量池
#11
项,发现是【
LocalVariableTable
】属性
00 00 00 0c
表示此属性的总长度,本例是
12
00 01
表示【
LocalVariableTable
】长度
00 00
表示局部变量生命周期开始,相对于字节码的偏移量
00 05
表示局部变量覆盖的范围长度
00 0c
表示局部变量名称,本例引用了常量池
#12
项,是【
this
】
00 0d
表示局部变量的类型,本例引用了常量池
#13
项,是
【
Lcn/itcast/jvm/t5/HelloWorld;
】
00 00
表示局部变量占有的槽位(
slot
)编号,本例是
0
0000660 29 56 00 21 00 05 00 06 00 00 00 00 00 02
00 01
0000700
00 07
00 08
00 01
00 09 00 00 00 2f 00 01 00 01
0000720
00 00 00 05 2a b7 00 01 b1 00 00 00 02 00 0a 00
0000740
00 00 06 00 01 00 00 00 04 00 0b 00 00 00 0c 00
0000760
01 00 00 00 05 00 0c 00 0d 00 00
00 09 00 0e 00
红色代表访问修饰符(本类中是
public static
)
蓝色代表引用了常量池
#14
项作为方法名称
绿色代表引用了常量池
#15
项作为方法参数描述
黄色代表方法属性数量,本方法是
2
红色代表方法属性(属性
1
)
00 09
表示引用了常量池
#09
项,发现是【
Code
】属性
00 00 00 37
表示此属性的长度是
55
00 02
表示【操作数栈】最大深度
00 01
表示【局部变量表】最大槽(
slot
)数
00 00 00 05
表示字节码长度,本例是
9
b2 00 02 12 03 b6 00 04 b1
是字节码指令
00 00 00 02
表示方法细节属性数量,本例是
2
00 0a
表示引用了常量池
#10
项,发现是【
LineNumberTable
】属性
00 00 00 0a
表示此属性的总长度,本例是
10
00 02
表示【
LineNumberTable
】长度
00 00
表示【字节码】行号
00 06
表示【
java
源码】行号
00 08
表示【字节码】行号
00 07
表示【
java
源码】行号
00 0b
表示引用了常量池
#11
项,发现是【
LocalVariableTable
】属性
00 00 00 0c
表示此属性的总长度,本例是
12
00 01
表示【
LocalVariableTable
】长度
00 00
表示局部变量生命周期开始,相对于字节码的偏移量
00 09
表示局部变量覆盖的范围长度
00 10
表示局部变量名称,本例引用了常量池
#16
项,是【
args
】
00 11
表示局部变量的类型,本例引用了常量池
#17
项,是【
[Ljava/lang/String;
】
00 00
表示局部变量占有的槽位(
slot
)编号,本例是
0
0000760 01 00 00 00 05 00 0c 00 0d 00 00
00 09
00 0e
00
0001000
0f
00 02
00 09 00 00 00 37 00 02 00 01 00 00 00
0001020
09 b2 00 02 12 03 b6 00 04 b1 00 00 00 02 00 0a
0001040
00 00 00 0a 00 02 00 00 00 06 00 08 00 07 00 0b
0001060
00 00 00 0c 00 01 00 00 00 09 00 10 00 11 00 00
红色代表方法属性(属性
2
)
00 12
表示引用了常量池
#18
项,发现是【
MethodParameters
】属性
00 00 00 05
表示此属性的总长度,本例是
5
01
参数数量
00 10
表示引用了常量池
#16
项,是【
args
】
00 00
访问修饰符
0001100
00 12 00 00 00 05 01 00 10 00 00
00 01 00 13 00
0001120 00 00 02 00 14
1.6 Method
信息
表示方法数量,本类为
2
0000660 29 56 00 21 00 05 00 06 00 00 00 00
00 02
00 01
一个方法由 访问修饰符,名称,参数描述,方法属性数量,方法属性组成
红色代表访问修饰符(本类中是
public
)
蓝色代表引用了常量池
#07
项作为方法名称
绿色代表引用了常量池
#08
项作为方法参数描述
黄色代表方法属性数量,本方法是
1
红色代表方法属性
00 09
表示引用了常量池
#09
项,发现是【
Code
】属性
00 00 00 2f
表示此属性的长度是
47
00 01
表示【操作数栈】最大深度
00 01
表示【局部变量表】最大槽(
slot
)数
00 00 00 05
表示字节码长度,本例是
5
2a b7 00 01 b1
是字节码指令
00 00 00 02
表示方法细节属性数量,本例是
2
00 0a
表示引用了常量池
#10
项,发现是【
LineNumberTable
】属性
00 00 00 06
表示此属性的总长度,本例是
6
00 01
表示【
LineNumberTable
】长度
00 00
表示【字节码】行号
00 04
表示【
java
源码】行号
00 0b
表示引用了常量池
#11
项,发现是【
LocalVariableTable
】属性
00 00 00 0c
表示此属性的总长度,本例是
12
00 01
表示【
LocalVariableTable
】长度
00 00
表示局部变量生命周期开始,相对于字节码的偏移量
00 05
表示局部变量覆盖的范围长度
00 0c
表示局部变量名称,本例引用了常量池
#12
项,是【
this
】
00 0d
表示局部变量的类型,本例引用了常量池
#13
项,是
【
Lcn/itcast/jvm/t5/HelloWorld;
】
00 00
表示局部变量占有的槽位(
slot
)编号,本例是
0
0000660 29 56 00 21 00 05 00 06 00 00 00 00 00 02
00 01
0000700
00 07
00 08
00 01
00 09 00 00 00 2f 00 01 00 01
0000720
00 00 00 05 2a b7 00 01 b1 00 00 00 02 00 0a 00
0000740
00 00 06 00 01 00 00 00 04 00 0b 00 00 00 0c 00
0000760
01 00 00 00 05 00 0c 00 0d 00 00
00 09 00 0e 00
红色代表访问修饰符(本类中是
public static
)
蓝色代表引用了常量池
#14
项作为方法名称
绿色代表引用了常量池
#15
项作为方法参数描述
黄色代表方法属性数量,本方法是
2
红色代表方法属性(属性
1
)
00 09
表示引用了常量池
#09
项,发现是【
Code
】属性
00 00 00 37
表示此属性的长度是
55
00 02
表示【操作数栈】最大深度
00 01
表示【局部变量表】最大槽(
slot
)数
00 00 00 05
表示字节码长度,本例是
9
b2 00 02 12 03 b6 00 04 b1
是字节码指令
00 00 00 02
表示方法细节属性数量,本例是
2
00 0a
表示引用了常量池
#10
项,发现是【
LineNumberTable
】属性
00 00 00 0a
表示此属性的总长度,本例是
10
00 02
表示【
LineNumberTable
】长度
00 00
表示【字节码】行号
00 06
表示【
java
源码】行号
00 08
表示【字节码】行号
00 07
表示【
java
源码】行号
00 0b
表示引用了常量池
#11
项,发现是【
LocalVariableTable
】属性
00 00 00 0c
表示此属性的总长度,本例是
12
00 01
表示【
LocalVariableTable
】长度
00 00
表示局部变量生命周期开始,相对于字节码的偏移量
00 09
表示局部变量覆盖的范围长度
00 10
表示局部变量名称,本例引用了常量池
#16
项,是【
args
】
00 11
表示局部变量的类型,本例引用了常量池
#17
项,是【
[Ljava/lang/String;
】
00 00
表示局部变量占有的槽位(
slot
)编号,本例是
0
0000760 01 00 00 00 05 00 0c 00 0d 00 00
00 09
00 0e
00
0001000
0f
00 02
00 09 00 00 00 37 00 02 00 01 00 00 00
0001020
09 b2 00 02 12 03 b6 00 04 b1 00 00 00 02 00 0a
0001040
00 00 00 0a 00 02 00 00 00 06 00 08 00 07 00 0b
0001060
00 00 00 0c 00 01 00 00 00 09 00 10 00 11 00 00
红色代表方法属性(属性
2
)
00 12
表示引用了常量池
#18
项,发现是【
MethodParameters
】属性
00 00 00 05
表示此属性的总长度,本例是
5
01
参数数量
00 10
表示引用了常量池
#16
项,是【
args
】
00 00
访问修饰符
0001100
00 12 00 00 00 05 01 00 10 00 00
00 01 00 13 00
0001120 00 00 02 00 14