;; 1065(d) bytes data (Revision: 4.9) CA FE BA BE ; magic number 00 03 ; minor version 00 2D ; major version 00 4B ; constant pool number= 74(d) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 08 00 24 ;(00 01) String => " " 07 00 36 ;(00 02) Class => MThread 07 00 39 ;(00 03) Class => Waiting 07 00 3D ;(00 04) Class => java/io/PrintStream 07 00 3E ;(00 05) Class => java/lang/String 07 00 3F ;(00 06) Class => java/lang/StringBuffer 07 00 40 ;(00 07) Class => java/lang/System 07 00 41 ;(00 08) Class => java/lang/Thread 0A 00 03 00 17 ;(00 09) Methodref => Waiting.<init>:()V 0A 00 08 00 17 ;(00 0A) Methodref => java/lang/Thread.<init>:()V 0A 00 02 00 18 ;(00 0B) Methodref => MThread.<init>:(I)V 0A 00 06 00 19 ;(00 0C) Methodref => java/lang/StringBuffer.<init>:(Ljava/lang/String;)V 0A 00 06 00 1A ;(00 0D) Methodref => java/lang/StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; 0A 00 02 00 1B ;(00 0E) Methodref => MThread.dummy:()V 09 00 02 00 1C ;(00 0F) Fieldref => MThread.id:I 09 00 07 00 1D ;(00 10) Fieldref => java/lang/System.out:Ljava/io/PrintStream; ; 0A 00 04 00 1E ;(00 11) Methodref => java/io/PrintStream.print:(Ljava/lang/String;)V 0A 00 08 00 1F ;(00 12) Methodref => java/lang/Thread.start:()V 0A 00 06 00 20 ;(00 13) Methodref => java/lang/StringBuffer.toString:()Ljava/lang/String; 0A 00 05 00 21 ;(00 14) Methodref => java/lang/String.valueOf:(I)Ljava/lang/String; 09 00 02 00 22 ;(00 15) Fieldref => MThread.w:LWaiting; 0A 00 03 00 23 ;(00 16) Methodref => Waiting.wait:(Ljava/lang/Thread;)V 0C 00 2D 00 26 ;(00 17) NameAndType => <init>:()V 0C 00 2D 00 28 ;(00 18) NameAndType => <init>:(I)V 0C 00 2D 00 2A ;(00 19) NameAndType => <init>:(Ljava/lang/String;)V 0C 00 3A 00 29 ;(00 1A) NameAndType => append:(Ljava/lang/String;)Ljava/lang/StringBuffer; 0C 00 3B 00 26 ;(00 1B) NameAndType => dummy:()V 0C 00 3C 00 31 ;(00 1C) NameAndType => id:I 0C 00 43 00 34 ;(00 1D) NameAndType => out:Ljava/io/PrintStream; 0C 00 44 00 2A ;(00 1E) NameAndType => print:(Ljava/lang/String;)V 0C 00 46 00 26 ;(00 1F) NameAndType => start:()V 0C 00 47 00 25 ;(00 20) NameAndType => toString:()Ljava/lang/String; ; 0C 00 48 00 27 ;(00 21) NameAndType => valueOf:(I)Ljava/lang/String; 0C 00 49 00 32 ;(00 22) NameAndType => w:LWaiting; 0C 00 4A 00 2B ;(00 23) NameAndType => wait:(Ljava/lang/Thread;)V 01 00 01 20 ;(00 24) Utf8 = " " 01 00 14 28 29 4C 6A 61 76 61 2F 6C 61 6E 67 2F 53 74 72 69 6E 67 3B ;(00 25) Utf8 = "()Ljava/lang/String;" 01 00 03 28 29 56 ;(00 26) Utf8 = "()V" 01 00 15 28 49 29 4C 6A 61 76 61 2F 6C 61 6E 67 2F 53 74 72 69 6E 67 3B ;(00 27) Utf8 = "(I)Ljava/lang/String;" 01 00 04 28 49 29 56 ;(00 28) Utf8 = "(I)V" 01 00 2C 28 4C 6A 61 76 61 2F 6C 61 6E 67 2F 53 74 72 69 6E 67 3B 29 4C 6A 61 76 61 2F 6C 61 6E 67 2F 53 74 72 69 6E 67 42 75 66 66 65 72 3B ;(00 29) Utf8 = "(Ljava/lang/String;)Ljava/lang/StringBuffer;" 01 00 15 28 4C 6A 61 76 61 2F 6C 61 6E 67 2F 53 74 72 69 6E 67 3B 29 56 ;(00 2A) Utf8 = "(Ljava/lang/String;)V" 01 00 15 28 4C 6A 61 76 61 2F 6C 61 6E 67 2F 54 68 72 65 61 64 3B 29 56 ;(00 2B) Utf8 = "(Ljava/lang/Thread;)V" 01 00 16 28 5B 4C 6A 61 76 61 2F 6C 61 6E 67 2F 53 74 72 69 6E 67 3B 29 56 ;(00 2C) Utf8 = "([Ljava/lang/String;)V" 01 00 06 3C 69 6E 69 74 3E ;(00 2D) Utf8 = "<init>" 01 00 04 43 6F 64 65 ;(00 2E) Utf8 = "Code" 01 00 0D 43 6F 6E 73 74 61 6E 74 56 61 6C 75 65 ;(00 2F) Utf8 = "ConstantValue" 01 00 0A 45 78 63 65 70 74 69 6F 6E 73 ;(00 30) Utf8 = "Exceptions" ; 01 00 01 49 ;(00 31) Utf8 = "I" 01 00 09 4C 57 61 69 74 69 6E 67 3B ;(00 32) Utf8 = "LWaiting;" 01 00 0F 4C 69 6E 65 4E 75 6D 62 65 72 54 61 62 6C 65 ;(00 33) Utf8 = "LineNumberTable" 01 00 15 4C 6A 61 76 61 2F 69 6F 2F 50 72 69 6E 74 53 74 72 65 61 6D 3B ;(00 34) Utf8 = "Ljava/io/PrintStream;" 01 00 0E 4C 6F 63 61 6C 56 61 72 69 61 62 6C 65 73 ;(00 35) Utf8 = "LocalVariables" 01 00 07 4D 54 68 72 65 61 64 ;(00 36) Utf8 = "MThread" 01 00 0C 4D 54 68 72 65 61 64 2E 6A 61 76 61 ;(00 37) Utf8 = "MThread.java" 01 00 0A 53 6F 75 72 63 65 46 69 6C 65 ;(00 38) Utf8 = "SourceFile" 01 00 07 57 61 69 74 69 6E 67 ;(00 39) Utf8 = "Waiting" 01 00 06 61 70 70 65 6E 64 ;(00 3A) Utf8 = "append" 01 00 05 64 75 6D 6D 79 ;(00 3B) Utf8 = "dummy" 01 00 02 69 64 ;(00 3C) Utf8 = "id" 01 00 13 6A 61 76 61 2F 69 6F 2F 50 72 69 6E 74 53 74 72 65 61 6D ;(00 3D) Utf8 = "java/io/PrintStream" 01 00 10 6A 61 76 61 2F 6C 61 6E 67 2F 53 74 72 69 6E 67 ;(00 3E) Utf8 = "java/lang/String" 01 00 16 6A 61 76 61 2F 6C 61 6E 67 2F 53 74 72 69 6E 67 42 75 66 66 65 72 ;(00 3F) Utf8 = "java/lang/StringBuffer" 01 00 10 6A 61 76 61 2F 6C 61 6E 67 2F 53 79 73 74 65 6D ;(00 40) Utf8 = "java/lang/System" ; 01 00 10 6A 61 76 61 2F 6C 61 6E 67 2F 54 68 72 65 61 64 ;(00 41) Utf8 = "java/lang/Thread" 01 00 04 6D 61 69 6E ;(00 42) Utf8 = "main" 01 00 03 6F 75 74 ;(00 43) Utf8 = "out" 01 00 05 70 72 69 6E 74 ;(00 44) Utf8 = "print" 01 00 03 72 75 6E ;(00 45) Utf8 = "run" 01 00 05 73 74 61 72 74 ;(00 46) Utf8 = "start" 01 00 08 74 6F 53 74 72 69 6E 67 ;(00 47) Utf8 = "toString" 01 00 07 76 61 6C 75 65 4F 66 ;(00 48) Utf8 = "valueOf" 01 00 01 77 ;(00 49) Utf8 = "w" 01 00 04 77 61 69 74 ;(00 4A) Utf8 = "wait" ;; class info. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 00 20 ; access flag= SUPER 00 02 ; this class= "MThread" 00 08 ; super class= "java/lang/Thread" 00 00 ; num. of implemented interface(s)= 0(d) ;;;;;;;;;;;;;;;;;;;;;; 00 02 ; num. of field(s)= 2(d) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;BEGIN field1(d) def. 00 02 ; access flag of method = PRIVATE 00 49 ; method name ="w" 00 32 ; method type ="LWaiting;" ; 00 00 ; num. of attribute(s), 0(d) ; ;END field1(d) def. ;BEGIN field2(d) def. 00 02 ; access flag of method = PRIVATE 00 3C ; method name ="id" 00 31 ; method type ="I" ; 00 00 ; num. of attribute(s), 0(d) ; ;END field2(d) def. 00 04 ; num. of methods(s)= 4(d) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;BEGIN method1(d) def. 00 00 ; access flag of method = 00 2D ; method name ="<init>" 00 28 ; method type ="(I)V" ; 00 01 ; num. of attribute(s), 1(d) ;;begin attribute 1(d) 00 2E ; attribute type= "Code" 00 00 00 39 ; attribute length= 57(d) ;; 00 03 ; stacks limits 00 02 ; locals limits 00 00 00 15 ; length of codes = 21(d) ;; 2A ; aload_0 B7 00 0A ; invokespecial java/lang/Thread/<init>()V 2A ; aload_0 BB 00 03 ; new Waiting 59 ; dup B7 00 09 ; invokespecial Waiting/<init>()V B5 00 15 ; putfield MThread/w LWaiting; 2A ; aload_0 1B ; iload_1 B5 00 0F ; putfield MThread/id I B1 ; return ;; 00 00 ; num. of exception handler(s) = 0(d) ;; 00 01 ; num. of attr. of this code attr. = 1(d) 00 33 ; code-attr.'s attr.1(d) name="LineNumberTable" 00 00 00 12 ; length of attr.=18(d) 00 04 ; 4(d) line number(s) 00 00 00 07 ; .line 7 00 04 00 08 ; .line 8 00 0F 00 09 ; .line 9 00 14 00 06 ; .line 6 ;;end attribute 1(d) ; ;END method1(d) def. ;BEGIN method2(d) def. 00 01 ; access flag of method = PUBLIC 00 45 ; method name ="run" 00 26 ; method type ="()V" ; 00 01 ; num. of attribute(s), 1(d) ;;begin attribute 1(d) 00 2E ; attribute type= "Code" 00 00 00 63 ; attribute length= 99(d) ;; 00 04 ; stacks limits 00 02 ; locals limits 00 00 00 37 ; length of codes = 55(d) ;; 03 ; iconst_0 3C ; istore_1 A7 00 2A ; goto Label2 2A ; aload_0 B4 00 15 ; getfield MThread/w LWaiting; 2A ; aload_0 B6 00 16 ; invokevirtual Waiting/wait(Ljava/lang/Thread;)V B2 00 10 ; getstatic java/lang/System/out Ljava/io/PrintStream; BB 00 06 ; new java/lang/StringBuffer 59 ; dup 2A ; aload_0 B4 00 0F ; getfield MThread/id I B8 00 14 ; invokestatic java/lang/String/valueOf(I)Ljava/lang/String; B7 00 0C ; invokespecial java/lang/StringBuffer/<init>(Ljava/lang/String;)V 12 01 ; ldc " " B6 00 0D ; invokevirtual java/lang/StringBuffer/append(Ljava/lang/String;)Ljava/lang/StringBuffer; B6 00 13 ; invokevirtual java/lang/StringBuffer/toString()Ljava/lang/String; B6 00 11 ; invokevirtual java/io/PrintStream/print(Ljava/lang/String;)V 84 01 01 ; iinc 1 1 1B ; iload_1 10 0A ; bipush 10 A1 FF D6 ; if_icmplt Label1 2A ; aload_0 B6 00 0E ; invokevirtual MThread/dummy()V B1 ; return ;; 00 00 ; num. of exception handler(s) = 0(d) ;; 00 01 ; num. of attr. of this code attr. = 1(d) 00 33 ; code-attr.'s attr.1(d) name="LineNumberTable" 00 00 00 1A ; length of attr.=26(d) 00 06 ; 6(d) line number(s) 00 00 00 0D ; .line 13 00 05 00 0E ; .line 14 00 0D 00 0F ; .line 15 00 29 00 0D ; .line 13 00 32 00 11 ; .line 17 00 36 00 0C ; .line 12 ;;end attribute 1(d) ; ;END method2(d) def. ;BEGIN method3(d) def. 00 00 ; access flag of method = 00 3B ; method name ="dummy" 00 26 ; method type ="()V" ; 00 01 ; num. of attribute(s), 1(d) ;;begin attribute 1(d) 00 2E ; attribute type= "Code" 00 00 00 19 ; attribute length= 25(d) ;; 00 00 ; stacks limits 00 01 ; locals limits 00 00 00 01 ; length of codes = 1(d) ;; B1 ; return ;; 00 00 ; num. of exception handler(s) = 0(d) ;; 00 01 ; num. of attr. of this code attr. = 1(d) 00 33 ; code-attr.'s attr.1(d) name="LineNumberTable" 00 00 00 06 ; length of attr.=6(d) 00 01 ; 1(d) line number(s) 00 00 00 14 ; .line 20 ;;end attribute 1(d) ; ;END method3(d) def. ;BEGIN method4(d) def. 00 09 ; access flag of method = PUBLIC + STATIC 00 42 ; method name ="main" 00 2C ; method type ="([Ljava/lang/String;)V" ; 00 01 ; num. of attribute(s), 1(d) ;;begin attribute 1(d) 00 2E ; attribute type= "Code" 00 00 00 4C ; attribute length= 76(d) ;; 00 03 ; stacks limits 00 02 ; locals limits 00 00 00 28 ; length of codes = 40(d) ;; BB 00 02 ; new MThread 59 ; dup 03 ; iconst_0 B7 00 0B ; invokespecial MThread/<init>(I)V 4C ; astore_1 2B ; aload_1 B6 00 12 ; invokevirtual java/lang/Thread/start()V BB 00 02 ; new MThread 59 ; dup 04 ; iconst_1 B7 00 0B ; invokespecial MThread/<init>(I)V 4C ; astore_1 2B ; aload_1 B6 00 12 ; invokevirtual java/lang/Thread/start()V BB 00 02 ; new MThread 59 ; dup 05 ; iconst_2 B7 00 0B ; invokespecial MThread/<init>(I)V 4C ; astore_1 2B ; aload_1 B6 00 12 ; invokevirtual java/lang/Thread/start()V B1 ; return ;; 00 00 ; num. of exception handler(s) = 0(d) ;; 00 01 ; num. of attr. of this code attr. = 1(d) 00 33 ; code-attr.'s attr.1(d) name="LineNumberTable" 00 00 00 12 ; length of attr.=18(d) 00 04 ; 4(d) line number(s) 00 00 00 18 ; .line 24 00 0D 00 19 ; .line 25 00 1A 00 1A ; .line 26 00 27 00 16 ; .line 22 ;;end attribute 1(d) ; ;END method4(d) def. 00 01 ; num. of class attribute(s)= 1(d) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;BEGIN class attribute1(d) 00 38 ; class's attr.1(d) name="SourceFile" 00 00 00 02 ; length of attr.=2(d) 00 37 ; filename="MThread.java" ;END class attribute1(d) ;; successfully parsed.
$Id: jas.html,v 1.1 2000-06-25 17:28:22+09 kaiya Exp kaiya $