Classfile /Users/hongqi/Documents/lanhuigu/Java-Base/java-base/java-jvm/src/main/java/com/lanhuigu/jvm/loadclass/HelloWorld.class
  Last modified Sep 23, 2019; size 1159 bytes
  MD5 checksum cc9cd88d24c02262d88697f633b05969
  Compiled from "HelloWorld.java"
public class HelloWorld
  minor version: 0
  major version: 52
  flags: ACC_PUBLIC, ACC_SUPER
Constant pool:
   #1 = Methodref          #15.#29        // java/lang/Object."<init>":()V
   #2 = String             #30            // abc
   #3 = Class              #31            // java/lang/String
   #4 = String             #32            // def
   #5 = Methodref          #3.#33         // java/lang/String."<init>":(Ljava/lang/String;)V
   #6 = Methodref          #3.#34         // java/lang/String.intern:()Ljava/lang/String;
   #7 = Fieldref           #35.#36        // java/lang/System.out:Ljava/io/PrintStream;
   #8 = Methodref          #37.#38        // java/io/PrintStream.println:(Z)V
   #9 = Class              #39            // com/lanhuigu/jvm/loadclass/HelloWord2
  #10 = Methodref          #9.#29         // com/lanhuigu/jvm/loadclass/HelloWord2."<init>":()V
  #11 = Fieldref           #9.#40         // com/lanhuigu/jvm/loadclass/HelloWord2.str100:Ljava/lang/String;
  #12 = Fieldref           #9.#41         // com/lanhuigu/jvm/loadclass/HelloWord2.str200:Ljava/lang/String;
  #13 = Fieldref           #9.#42         // com/lanhuigu/jvm/loadclass/HelloWord2.str300:Ljava/lang/String;
  #14 = Class              #43            // com/lanhuigu/jvm/loadclass/HelloWorld
  #15 = Class              #44            // java/lang/Object
  #16 = Utf8               <init>
  #17 = Utf8               ()V
  #18 = Utf8               Code
  #19 = Utf8               LineNumberTable
  #20 = Utf8               main
  #21 = Utf8               ([Ljava/lang/String;)V
  #22 = Utf8               StackMapTable
  #23 = Class              #45            // "[Ljava/lang/String;"
  #24 = Class              #31            // java/lang/String
  #25 = Class              #46            // java/io/PrintStream
  #26 = Class              #39            // com/lanhuigu/jvm/loadclass/HelloWord2
  #27 = Utf8               SourceFile
  #28 = Utf8               HelloWorld.java
  #29 = NameAndType        #16:#17        // "<init>":()V
  #30 = Utf8               abc
  #31 = Utf8               java/lang/String
  #32 = Utf8               def
  #33 = NameAndType        #16:#47        // "<init>":(Ljava/lang/String;)V
  #34 = NameAndType        #48:#49        // intern:()Ljava/lang/String;
  #35 = Class              #50            // java/lang/System
  #36 = NameAndType        #51:#52        // out:Ljava/io/PrintStream;
  #37 = Class              #46            // java/io/PrintStream
  #38 = NameAndType        #53:#54        // println:(Z)V
  #39 = Utf8               com/lanhuigu/jvm/loadclass/HelloWord2
  #40 = NameAndType        #55:#56        // str100:Ljava/lang/String;
  #41 = NameAndType        #57:#56        // str200:Ljava/lang/String;
  #42 = NameAndType        #58:#56        // str300:Ljava/lang/String;
  #43 = Utf8               com/lanhuigu/jvm/loadclass/HelloWorld
  #44 = Utf8               java/lang/Object
  #45 = Utf8               [Ljava/lang/String;
  #46 = Utf8               java/io/PrintStream
  #47 = Utf8               (Ljava/lang/String;)V
  #48 = Utf8               intern
  #49 = Utf8               ()Ljava/lang/String;
  #50 = Utf8               java/lang/System
  #51 = Utf8               out
  #52 = Utf8               Ljava/io/PrintStream;
  #53 = Utf8               println
  #54 = Utf8               (Z)V
  #55 = Utf8               str100
  #56 = Utf8               Ljava/lang/String;
  #57 = Utf8               str200
  #58 = Utf8               str300
{
  public HelloWorld();
    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 26: 0

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=7, args_size=1
         0: ldc           #2                  // String abc
         2: astore_1
         3: new           #3                  // class java/lang/String
         6: dup
         7: ldc           #4                  // String def
         9: invokespecial #5                  // Method java/lang/String."<init>":(Ljava/lang/String;)V
        12: astore_2
        13: ldc           #2                  // String abc
        15: astore_3
        16: aload_2
        17: invokevirtual #6                  // Method java/lang/String.intern:()Ljava/lang/String;
        20: astore        4
        22: ldc           #4                  // String def
        24: astore        5
        26: getstatic     #7                  // Field java/lang/System.out:Ljava/io/PrintStream;
        29: aload_1
        30: aload_3
        31: if_acmpne     38
        34: iconst_1
        35: goto          39
        38: iconst_0
        39: invokevirtual #8                  // Method java/io/PrintStream.println:(Z)V
        42: getstatic     #7                  // Field java/lang/System.out:Ljava/io/PrintStream;
        45: aload_2
        46: aload         4
        48: if_acmpne     55
        51: iconst_1
        52: goto          56
        55: iconst_0
        56: invokevirtual #8                  // Method java/io/PrintStream.println:(Z)V
        59: getstatic     #7                  // Field java/lang/System.out:Ljava/io/PrintStream;
        62: aload         4
        64: aload         5
        66: if_acmpne     73
        69: iconst_1
        70: goto          74
        73: iconst_0
        74: invokevirtual #8                  // Method java/io/PrintStream.println:(Z)V
        77: new           #9                  // class com/lanhuigu/jvm/loadclass/HelloWord2
        80: dup
        81: invokespecial #10                 // Method com/lanhuigu/jvm/loadclass/HelloWord2."<init>":()V
        84: astore        6
        86: getstatic     #7                  // Field java/lang/System.out:Ljava/io/PrintStream;
        89: aload         6
        91: getfield      #11                 // Field com/lanhuigu/jvm/loadclass/HelloWord2.str100:Ljava/lang/String;
        94: aload_1
        95: if_acmpne     102
        98: iconst_1
        99: goto          103
       102: iconst_0
       103: invokevirtual #8                  // Method java/io/PrintStream.println:(Z)V
       106: getstatic     #7                  // Field java/lang/System.out:Ljava/io/PrintStream;
       109: aload         6
       111: getfield      #12                 // Field com/lanhuigu/jvm/loadclass/HelloWord2.str200:Ljava/lang/String;
       114: aload_2
       115: if_acmpne     122
       118: iconst_1
       119: goto          123
       122: iconst_0
       123: invokevirtual #8                  // Method java/io/PrintStream.println:(Z)V
       126: getstatic     #7                  // Field java/lang/System.out:Ljava/io/PrintStream;
       129: aload         6
       131: getfield      #13                 // Field com/lanhuigu/jvm/loadclass/HelloWord2.str300:Ljava/lang/String;
       134: aload         4
       136: if_acmpne     143
       139: iconst_1
       140: goto          144
       143: iconst_0
       144: invokevirtual #8                  // Method java/io/PrintStream.println:(Z)V
       147: return
      LineNumberTable:
        line 28: 0
        line 29: 3
        line 30: 13
        line 35: 16
        line 36: 22
        line 38: 26
        line 40: 42
        line 42: 59
        line 44: 77
        line 46: 86
        line 48: 106
        line 50: 126
        line 51: 147
      StackMapTable: number_of_entries = 12
        frame_type = 255 /* full_frame */
          offset_delta = 38
          locals = [ class "[Ljava/lang/String;", class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String ]
          stack = [ class java/io/PrintStream ]
        frame_type = 255 /* full_frame */
          offset_delta = 0
          locals = [ class "[Ljava/lang/String;", class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String ]
          stack = [ class java/io/PrintStream, int ]
        frame_type = 79 /* same_locals_1_stack_item */
          stack = [ class java/io/PrintStream ]
        frame_type = 255 /* full_frame */
          offset_delta = 0
          locals = [ class "[Ljava/lang/String;", class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String ]
          stack = [ class java/io/PrintStream, int ]
        frame_type = 80 /* same_locals_1_stack_item */
          stack = [ class java/io/PrintStream ]
        frame_type = 255 /* full_frame */
          offset_delta = 0
          locals = [ class "[Ljava/lang/String;", class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String ]
          stack = [ class java/io/PrintStream, int ]
        frame_type = 255 /* full_frame */
          offset_delta = 27
          locals = [ class "[Ljava/lang/String;", class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class com/lanhuigu/jvm/loadclass/HelloWord2 ]
          stack = [ class java/io/PrintStream ]
        frame_type = 255 /* full_frame */
          offset_delta = 0
          locals = [ class "[Ljava/lang/String;", class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class com/lanhuigu/jvm/loadclass/HelloWord2 ]
          stack = [ class java/io/PrintStream, int ]
        frame_type = 82 /* same_locals_1_stack_item */
          stack = [ class java/io/PrintStream ]
        frame_type = 255 /* full_frame */
          offset_delta = 0
          locals = [ class "[Ljava/lang/String;", class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class com/lanhuigu/jvm/loadclass/HelloWord2 ]
          stack = [ class java/io/PrintStream, int ]
        frame_type = 83 /* same_locals_1_stack_item */
          stack = [ class java/io/PrintStream ]
        frame_type = 255 /* full_frame */
          offset_delta = 0
          locals = [ class "[Ljava/lang/String;", class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class java/lang/String, class com/lanhuigu/jvm/loadclass/HelloWord2 ]
          stack = [ class java/io/PrintStream, int ]
}
SourceFile: "HelloWorld.java"
