;; 955(d) bytes data (Revision: 4.9) CA FE BA BE ; magic number 00 03 ; minor version 00 2D ; major version 00 3B ; constant pool number= 58(d) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 0A 00 12 00 1B ;(00 01) Methodref => java/lang/Object.:()V 07 00 1C ;(00 02) Class => java/io/FileInputStream 0A 00 02 00 1D ;(00 03) Methodref => java/io/FileInputStream.:(Ljava/lang/String;)V 07 00 1E ;(00 04) Class => java/io/FileNotFoundException 09 00 1F 00 20 ;(00 05) Fieldref => java/lang/System.out:Ljava/io/PrintStream; 07 00 21 ;(00 06) Class => java/lang/StringBuffer 0A 00 06 00 1B ;(00 07) Methodref => java/lang/StringBuffer.:()V 08 00 22 ;(00 08) String => "1: Caught " 0A 00 06 00 23 ;(00 09) Methodref => java/lang/StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer; 0A 00 06 00 24 ;(00 0A) Methodref => java/lang/StringBuffer.append:(Ljava/lang/Object;)Ljava/lang/StringBuffer; 0A 00 06 00 25 ;(00 0B) Methodref => java/lang/StringBuffer.toString:()Ljava/lang/String; 0A 00 26 00 27 ;(00 0C) Methodref => java/io/PrintStream.println:(Ljava/lang/String;)V 07 00 28 ;(00 0D) Class => java/lang/ArrayIndexOutOfBoundsException 08 00 29 ;(00 0E) String => "2: Caught " 0A 00 1F 00 2A ;(00 0F) Methodref => java/lang/System.exit:(I)V 08 00 2B ;(00 10) String => "Called except exit" ; 07 00 2C ;(00 11) Class => ArrayFileFinally 07 00 2D ;(00 12) Class => java/lang/Object 01 00 06 3C 69 6E 69 74 3E ;(00 13) Utf8 = "" 01 00 03 28 29 56 ;(00 14) Utf8 = "()V" 01 00 04 43 6F 64 65 ;(00 15) Utf8 = "Code" 01 00 0F 4C 69 6E 65 4E 75 6D 62 65 72 54 61 62 6C 65 ;(00 16) Utf8 = "LineNumberTable" 01 00 04 6D 61 69 6E ;(00 17) Utf8 = "main" 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 18) Utf8 = "([Ljava/lang/String;)V" 01 00 0A 53 6F 75 72 63 65 46 69 6C 65 ;(00 19) Utf8 = "SourceFile" 01 00 15 41 72 72 61 79 46 69 6C 65 46 69 6E 61 6C 6C 79 2E 6A 61 76 61 ;(00 1A) Utf8 = "ArrayFileFinally.java" 0C 00 13 00 14 ;(00 1B) NameAndType => :()V 01 00 17 6A 61 76 61 2F 69 6F 2F 46 69 6C 65 49 6E 70 75 74 53 74 72 65 61 6D ;(00 1C) Utf8 = "java/io/FileInputStream" 0C 00 13 00 2E ;(00 1D) NameAndType => :(Ljava/lang/String;)V 01 00 1D 6A 61 76 61 2F 69 6F 2F 46 69 6C 65 4E 6F 74 46 6F 75 6E 64 45 78 63 65 70 74 69 6F 6E ;(00 1E) Utf8 = "java/io/FileNotFoundException" 07 00 2F ;(00 1F) Class => java/lang/System 0C 00 30 00 31 ;(00 20) NameAndType => out:Ljava/io/PrintStream; ; 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 21) Utf8 = "java/lang/StringBuffer" 01 00 0A 31 3A 20 43 61 75 67 68 74 20 ;(00 22) Utf8 = "1: Caught " 0C 00 32 00 33 ;(00 23) NameAndType => append:(Ljava/lang/String;)Ljava/lang/StringBuffer; 0C 00 32 00 34 ;(00 24) NameAndType => append:(Ljava/lang/Object;)Ljava/lang/StringBuffer; 0C 00 35 00 36 ;(00 25) NameAndType => toString:()Ljava/lang/String; 07 00 37 ;(00 26) Class => java/io/PrintStream 0C 00 38 00 2E ;(00 27) NameAndType => println:(Ljava/lang/String;)V 01 00 28 6A 61 76 61 2F 6C 61 6E 67 2F 41 72 72 61 79 49 6E 64 65 78 4F 75 74 4F 66 42 6F 75 6E 64 73 45 78 63 65 70 74 69 6F 6E ;(00 28) Utf8 = "java/lang/ArrayIndexOutOfBoundsException" 01 00 0A 32 3A 20 43 61 75 67 68 74 20 ;(00 29) Utf8 = "2: Caught " 0C 00 39 00 3A ;(00 2A) NameAndType => exit:(I)V 01 00 12 43 61 6C 6C 65 64 20 65 78 63 65 70 74 20 65 78 69 74 ;(00 2B) Utf8 = "Called except exit" 01 00 10 41 72 72 61 79 46 69 6C 65 46 69 6E 61 6C 6C 79 ;(00 2C) Utf8 = "ArrayFileFinally" 01 00 10 6A 61 76 61 2F 6C 61 6E 67 2F 4F 62 6A 65 63 74 ;(00 2D) Utf8 = "java/lang/Object" 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 2E) Utf8 = "(Ljava/lang/String;)V" 01 00 10 6A 61 76 61 2F 6C 61 6E 67 2F 53 79 73 74 65 6D ;(00 2F) Utf8 = "java/lang/System" 01 00 03 6F 75 74 ;(00 30) Utf8 = "out" ; 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 31) Utf8 = "Ljava/io/PrintStream;" 01 00 06 61 70 70 65 6E 64 ;(00 32) Utf8 = "append" 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 33) Utf8 = "(Ljava/lang/String;)Ljava/lang/StringBuffer;" 01 00 2C 28 4C 6A 61 76 61 2F 6C 61 6E 67 2F 4F 62 6A 65 63 74 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 34) Utf8 = "(Ljava/lang/Object;)Ljava/lang/StringBuffer;" 01 00 08 74 6F 53 74 72 69 6E 67 ;(00 35) Utf8 = "toString" 01 00 14 28 29 4C 6A 61 76 61 2F 6C 61 6E 67 2F 53 74 72 69 6E 67 3B ;(00 36) Utf8 = "()Ljava/lang/String;" 01 00 13 6A 61 76 61 2F 69 6F 2F 50 72 69 6E 74 53 74 72 65 61 6D ;(00 37) Utf8 = "java/io/PrintStream" 01 00 07 70 72 69 6E 74 6C 6E ;(00 38) Utf8 = "println" 01 00 04 65 78 69 74 ;(00 39) Utf8 = "exit" 01 00 04 28 49 29 56 ;(00 3A) Utf8 = "(I)V" ;; class info. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 00 20 ; access flag= SUPER 00 11 ; this class= "ArrayFileFinally" 00 12 ; super class= "java/lang/Object" 00 00 ; num. of implemented interface(s)= 0(d) ;;;;;;;;;;;;;;;;;;;;;; 00 00 ; num. of field(s)= 0(d) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 00 02 ; num. of methods(s)= 2(d) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;BEGIN method1(d) def. 00 00 ; access flag of method = 00 13 ; method name ="" 00 14 ; method type ="()V" ; 00 01 ; num. of attribute(s), 1(d) ;;begin attribute 1(d) 00 15 ; attribute type= "Code" 00 00 00 1D ; attribute length= 29(d) ;; 00 01 ; stacks limits 00 01 ; locals limits 00 00 00 05 ; length of codes = 5(d) ;; 2A B7 00 01 B1 ; codes ;; 00 00 ; num. of exception handler(s) = 0(d) ;; 00 01 ; num. of attr. of this code attr. = 1(d) 00 16 ; 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 04 ; .line 4 ;;end attribute 1(d) ; ;END method1(d) def. ;BEGIN method2(d) def. 00 09 ; access flag of method = PUBLIC + STATIC 00 17 ; method name ="main" 00 18 ; method type ="([Ljava/lang/String;)V" ; 00 01 ; num. of attribute(s), 1(d) ;;begin attribute 1(d) 00 15 ; attribute type= "Code" 00 00 00 AC ; attribute length= 172(d) ;; 00 04 ; stacks limits 00 05 ; locals limits 00 00 00 68 ; length of codes = 104(d) ;; BB 00 02 59 2A 03 32 B7 00 03 57 A8 00 50 A7 00 59 4C B2 00 05 BB 00 06 59 B7 00 07 12 08 B6 00 09 2B B6 00 0A B6 00 0B B6 00 0C A8 00 30 A7 00 39 4D B2 00 05 BB 00 06 59 B7 00 07 12 0E B6 00 09 2C B6 00 0A B6 00 0B B6 00 0C 03 B8 00 0F A8 00 0C A7 00 15 4E A8 00 05 2D BF 3A 04 B2 00 05 12 10 B6 00 0C A9 04 B1 ; codes ;; 00 03 ; num. of exception handler(s) = 3(d) ; handler # 1 00 00 ; start_pc 00 0B ; end_pc 00 11 ; handler_pc 00 04 ; catch_type = "java/io/FileNotFoundException" ; handler # 2 00 00 ; start_pc 00 0B ; end_pc 00 31 ; handler_pc 00 0D ; catch_type = "java/lang/ArrayIndexOutOfBoundsException" ; handler # 3 00 00 ; start_pc 00 55 ; end_pc 00 55 ; handler_pc 00 00 ; catch_type = "" ;; 00 01 ; num. of attr. of this code attr. = 1(d) 00 16 ; 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 07 ; .line 7 00 11 00 09 ; .line 9 00 31 00 0B ; .line 11 00 4B 00 0C ; .line 12 00 55 00 0E ; .line 14 00 67 00 10 ; .line 16 ;;end attribute 1(d) ; ;END method2(d) def. 00 01 ; num. of class attribute(s)= 1(d) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;BEGIN class attribute1(d) 00 19 ; class's attr.1(d) name="SourceFile" 00 00 00 02 ; length of attr.=2(d) 00 1A ; filename="ArrayFileFinally.java" ;END class attribute1(d) ;; successfully parsed.