package com.learning.stack.local_variables;
/**
* @Author wangyouhui
* @Description 局部变量表测试
**/
public class LocalVariableTest {
public static void main(String[] args) {
LocalVariableTest localVariableTest = new LocalVariableTest();
int num = 10;
localVariableTest.print();
}
private void print() {
System.out.println("局部变量表");
}
}
Classfile /F:/jdk-learning/jvm/target/classes/com/learning/stack/local_variables/LocalVariableTest.class
Last modified 2023-10-16; size 785 bytes
MD5 checksum e16aaaceec49515090d5cb15e4c6467a
Compiled from "LocalVariableTest.java"
public class com.learning.stack.local_variables.LocalVariableTest
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_SUPER
Constant pool:
#1 = Methodref #8.#26 // java/lang/Object."":()V
#2 = Class #27 // com/learning/stack/local_variables/LocalVariableTest
#3 = Methodref #2.#26 // com/learning/stack/local_variables/LocalVariableTest."":()V
#4 = Methodref #2.#28 // com/learning/stack/local_variables/LocalVariableTest.print:()V
#5 = Fieldref #29.#30 // java/lang/System.out:Ljava/io/PrintStream;
#6 = String #31 // 局部变量表
#7 = Methodref #32.#33 // java/io/PrintStream.println:(Ljava/lang/String;)V
#8 = Class #34 // java/lang/Object
#9 = Utf8
#10 = Utf8 ()V
#11 = Utf8 Code
#12 = Utf8 LineNumberTable
#13 = Utf8 LocalVariableTable
#14 = Utf8 this
#15 = Utf8 Lcom/learning/stack/local_variables/LocalVariableTest;
#16 = Utf8 main
#17 = Utf8 ([Ljava/lang/String;)V
#18 = Utf8 args
#19 = Utf8 [Ljava/lang/String;
#20 = Utf8 localVariableTest
#21 = Utf8 num
#22 = Utf8 I
#23 = Utf8 print
#24 = Utf8 SourceFile
#25 = Utf8 LocalVariableTest.java
#26 = NameAndType #9:#10 // "":()V
#27 = Utf8 com/learning/stack/local_variables/LocalVariableTest
#28 = NameAndType #23:#10 // print:()V
#29 = Class #35 // java/lang/System
#30 = NameAndType #36:#37 // out:Ljava/io/PrintStream;
#31 = Utf8 局部变量表
#32 = Class #38 // java/io/PrintStream
#33 = NameAndType #39:#40 // println:(Ljava/lang/String;)V
#34 = Utf8 java/lang/Object
#35 = Utf8 java/lang/System
#36 = Utf8 out
#37 = Utf8 Ljava/io/PrintStream;
#38 = Utf8 java/io/PrintStream
#39 = Utf8 println
#40 = Utf8 (Ljava/lang/String;)V
{
public com.learning.stack.local_variables.LocalVariableTest();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #1 // Method java/lang/Object."":()V
4: return
LineNumberTable:
line 7: 0
LocalVariableTable:
Start Length Slot Name Signature
0 5 0 this Lcom/learning/stack/local_variables/LocalVariableTest;
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
0: new #2 // class com/learning/stack/local_variables/LocalVariableTest
3: dup
4: invokespecial #3 // Method "":()V
7: astore_1
8: bipush 10
10: istore_2
11: aload_1
12: invokespecial #4 // Method print:()V
15: return
LineNumberTable:
line 9: 0
line 10: 8
line 11: 11
line 12: 15
LocalVariableTable:
Start Length Slot Name Signature
0 16 0 args [Ljava/lang/String;
8 8 1 localVariableTest Lcom/learning/stack/local_variables/LocalVariableTest;
11 5 2 num I
}
SourceFile: "LocalVariableTest.java"

1.字节码

2.异常表

3.杂项

4.slot槽位





