Classfile /Users/yc/github/YCJavaBlog/day8/TestClass.class
Last modified 2024-6-25; size 947 bytes
//魔数,这个是md5
MD5 checksum 6cea821db1fe6d5b1b1aea403a6e5917
Compiled from "TestClass.java"
public class day8.TestClass
//版本号,
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_SUPER
//常量池
Constant pool:
#1 = Methodref #13.#30 // java/lang/Object."<init>":()V
#2 = Class #31 // java/lang/StringBuilder
#3 = Methodref #2.#30 // java/lang/StringBuilder."<init>":()V
#4 = Methodref #2.#32 // java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
#5 = Class #33 // day8/TestClass
#6 = String #34 // yc
#7 = Methodref #2.#35 // java/lang/StringBuilder.toString:()Ljava/lang/String;
#8 = Fieldref #5.#36 // day8/TestClass.number:I
#9 = Methodref #37.#38 // java/lang/String.valueOf:(I)Ljava/lang/String;
#10 = Fieldref #5.#39 // day8/TestClass.str2:Ljava/lang/String;
#11 = Fieldref #40.#41 // java/lang/System.out:Ljava/io/PrintStream;
#12 = Methodref #42.#43 // java/io/PrintStream.println:(Ljava/lang/String;)V
#13 = Class #44 // java/lang/Object
#14 = Utf8 str1
#15 = Utf8 Ljava/lang/String;
#16 = Utf8 ConstantValue
#17 = Utf8 str2
#18 = Utf8 number
#19 = Utf8 I
#20 = Utf8 <init>
#21 = Utf8 ()V
#22 = Utf8 Code
#23 = Utf8 LineNumberTable
#24 = Utf8 splice
#25 = Utf8 (Ljava/lang/String;)Ljava/lang/String;
#26 = Utf8 print
#27 = Utf8 <clinit>
#28 = Utf8 SourceFile
#29 = Utf8 TestClass.java
#30 = NameAndType #20:#21 // "<init>":()V
#31 = Utf8 java/lang/StringBuilder
#32 = NameAndType #45:#46 // append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
#33 = Utf8 day8/TestClass
#34 = Utf8 yc
#35 = NameAndType #47:#48 // toString:()Ljava/lang/String;
#36 = NameAndType #18:#19 // number:I
#37 = Class #49 // java/lang/String
#38 = NameAndType #50:#51 // valueOf:(I)Ljava/lang/String;
#39 = NameAndType #17:#15 // str2:Ljava/lang/String;
#40 = Class #52 // java/lang/System
#41 = NameAndType #53:#54 // out:Ljava/io/PrintStream;
#42 = Class #55 // java/io/PrintStream
#43 = NameAndType #56:#57 // println:(Ljava/lang/String;)V
#44 = Utf8 java/lang/Object
#45 = Utf8 append
#46 = Utf8 (Ljava/lang/String;)Ljava/lang/StringBuilder;
#47 = Utf8 toString
#48 = Utf8 ()Ljava/lang/String;
#49 = Utf8 java/lang/String
#50 = Utf8 valueOf
#51 = Utf8 (I)Ljava/lang/String;
#52 = Utf8 java/lang/System
#53 = Utf8 out
#54 = Utf8 Ljava/io/PrintStream;
#55 = Utf8 java/io/PrintStream
#56 = Utf8 println
#57 = Utf8 (Ljava/lang/String;)V
{
//字段表集合
public day8.TestClass();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #1 // Method java/lang/Object."<init>":()V
4: return
LineNumberTable:
line 3: 0
//方法表集合
public java.lang.String splice(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
0: new #2 // class java/lang/StringBuilder
3: dup
4: invokespecial #3 // Method java/lang/StringBuilder."<init>":()V
7: aload_1
8: invokevirtual #4 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: ldc #6 // String yc
13: invokevirtual #4 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
16: invokevirtual #7 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
19: areturn
//属性表集合
LineNumberTable:
line 14: 0
//方法表集合
public void print();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
0: getstatic #8 // Field number:I
3: invokestatic #9 // Method java/lang/String.valueOf:(I)Ljava/lang/String;
6: astore_1
7: aload_0
8: new #2 // class java/lang/StringBuilder
11: dup
12: invokespecial #3 // Method java/lang/StringBuilder."<init>":()V
15: aload_1
16: invokevirtual #4 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
19: ldc #6 // String yc
21: invokevirtual #4 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
24: invokevirtual #7 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
27: putfield #10 // Field str2:Ljava/lang/String;
30: getstatic #11 // Field java/lang/System.out:Ljava/io/PrintStream;
33: new #2 // class java/lang/StringBuilder
36: dup
37: invokespecial #3 // Method java/lang/StringBuilder."<init>":()V
40: ldc #6 // String yc
42: invokevirtual #4 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
45: aload_0
46: getfield #10 // Field str2:Ljava/lang/String;
49: invokevirtual #4 // Method java/lang/StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
52: invokevirtual #7 // Method java/lang/StringBuilder.toString:()Ljava/lang/String;
55: invokevirtual #12 // Method java/io/PrintStream.println:(Ljava/lang/String;)V
58: return
//属性表集合
LineNumberTable:
line 18: 0
line 19: 7
line 20: 30
line 21: 58
static {};
descriptor: ()V
flags: ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: bipush 10
2: putstatic #8 // Field number:I
5: return
//属性表集合
LineNumberTable:
line 10: 0
line 11: 5
}
SourceFile: "TestClass.java"