class Date extends java.lang.Object SourceFile: "Date.java" minor version: 0 major version: 0 Constant pool: const #1 = Method #7.#20; // java/lang/Object."":()V const #2 = Field #5.#21; // Date.day:I const #3 = Field #5.#22; // Date.month:I const #4 = Field #5.#23; // Date.year:I const #5 = class #24; // Date const #6 = Method #5.#25; // Date."":(III)V const #7 = class #26; // Object const #8 = Asciz day; const #9 = Asciz I; const #10 = Asciz month; const #11 = Asciz year; const #12 = Asciz ; const #13 = Asciz (III)V; const #14 = Asciz Code; const #15 = Asciz LineNumberTable; const #16 = Asciz forward; const #17 = Asciz ()LDate;; const #18 = Asciz SourceFile; const #19 = Asciz Date.java; const #20 = NameAndType #12:#27;// "":()V const #21 = NameAndType #8:#9;// day:I const #22 = NameAndType #10:#9;// month:I const #23 = NameAndType #11:#9;// year:I const #24 = Asciz Date; const #25 = NameAndType #12:#13;// "":(III)V const #26 = Asciz java/lang/Object; const #27 = Asciz ()V; { public Date(int,int,int); Code: Stack=2, Locals=4, Args_size=4 0: aload_0 1: invokespecial #1; //Method java/lang/Object."":()V 4: aload_0 5: iconst_1 6: putfield #2; //Field day:I 9: aload_0 10: iconst_1 11: putfield #3; //Field month:I 14: aload_0 15: sipush 2006 18: putfield #4; //Field year:I 21: aload_0 22: iload_1 23: putfield #2; //Field day:I 26: aload_0 27: iload_2 28: putfield #3; //Field month:I 31: aload_0 32: iload_3 33: putfield #4; //Field year:I 36: return LineNumberTable: line 6: 0 line 2: 4 line 3: 9 line 4: 14 line 7: 21 line 8: 26 line 9: 31 line 10: 36 public Date forward(); Code: Stack=5, Locals=4, Args_size=1 0: aload_0 1: getfield #2; //Field day:I 4: istore_1 5: aload_0 6: getfield #3; //Field month:I 9: istore_2 10: aload_0 11: getfield #4; //Field year:I 14: istore_3 15: aload_0 16: getfield #2; //Field day:I 19: bipush 31 21: if_icmpne 49 24: iconst_1 25: istore_1 26: aload_0 27: getfield #3; //Field month:I 30: bipush 12 32: if_icmpne 43 35: iconst_1 36: istore_2 37: iinc 3, 1 40: goto 128 43: iinc 2, 1 46: goto 128 49: aload_0 50: getfield #2; //Field day:I 53: bipush 28 55: if_icmpne 73 58: aload_0 59: getfield #3; //Field month:I 62: iconst_2 63: if_icmpne 73 66: iconst_1 67: istore_1 68: iconst_3 69: istore_2 70: goto 128 73: aload_0 74: getfield #2; //Field day:I 77: bipush 30 79: if_icmpne 125 82: aload_0 83: getfield #3; //Field month:I 86: iconst_4 87: if_icmpeq 117 90: aload_0 91: getfield #3; //Field month:I 94: bipush 6 96: if_icmpeq 117 99: aload_0 100: getfield #3; //Field month:I 103: bipush 9 105: if_icmpeq 117 108: aload_0 109: getfield #3; //Field month:I 112: bipush 11 114: if_icmpne 125 117: iconst_1 118: istore_1 119: iinc 2, 1 122: goto 128 125: iinc 1, 1 128: new #5; //class Date 131: dup 132: iload_1 133: iload_2 134: iload_3 135: invokespecial #6; //Method "":(III)V 138: areturn LineNumberTable: line 14: 0 line 15: 5 line 16: 10 line 17: 15 line 18: 24 line 19: 26 line 20: 35 line 21: 37 line 23: 43 line 26: 49 line 27: 66 line 28: 68 line 31: 73 line 32: 117 line 33: 119 line 36: 125 line 38: 128 }