| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | a | b | c | d | e | f | |
| 0 | ca | fe | ba | be | 00 | 00 | 00 | 32 | 00 | 22 | 07 | 00 | 02 | 01 | 00 | 1e |
| 10 | 63 | 6f | 6d | 2f | 6d | 6f | 62 | 69 | 6c | 65 | 66 | 69 | 73 | 68 | 2f | 74 |
| 20 | 65 | 73 | 74 | 2f | 48 | 65 | 6c | 6c | 6f | 57 | 6f | 72 | 6c | 64 | 07 | 00 |
| 30 | 04 | 01 | 00 | 10 | 6a | 61 | 76 | 61 | 2f | 6c | 61 | 6e | 67 | 2f | 4f | 62 |
| 40 | 6a | 65 | 63 | 74 | 01 | 00 | 06 | 3c | 69 | 6e | 69 | 74 | 3e | 01 | 00 | 03 |
| 50 | 28 | 29 | 56 | 01 | 00 | 04 | 43 | 6f | 64 | 65 | 0a | 00 | 03 | 00 | 09 | 0c |
| 60 | 00 | 05 | 00 | 06 | 01 | 00 | 0f | 4c | 69 | 6e | 65 | 4e | 75 | 6d | 62 | 65 |
| 70 | 72 | 54 | 61 | 62 | 6c | 65 | 01 | 00 | 12 | 4c | 6f | 63 | 61 | 6c | 56 | 61 |
| 80 | 72 | 69 | 61 | 62 | 6c | 65 | 54 | 61 | 62 | 6c | 65 | 01 | 00 | 04 | 74 | 68 |
| 90 | 69 | 73 | 01 | 00 | 20 | 4c | 63 | 6f | 6d | 2f | 6d | 6f | 62 | 69 | 6c | 65 |
| a0 | 66 | 69 | 73 | 68 | 2f | 74 | 65 | 73 | 74 | 2f | 48 | 65 | 6c | 6c | 6f | 57 |
| b0 | 6f | 72 | 6c | 64 | 3b | 01 | 00 | 04 | 6d | 61 | 69 | 6e | 01 | 00 | 16 | 28 |
| c0 | 5b | 4c | 6a | 61 | 76 | 61 | 2f | 6c | 61 | 6e | 67 | 2f | 53 | 74 | 72 | 69 |
| d0 | 6e | 67 | 3b | 29 | 56 | 09 | 00 | 11 | 00 | 13 | 07 | 00 | 12 | 01 | 00 | 10 |
| e0 | 6a | 61 | 76 | 61 | 2f | 6c | 61 | 6e | 67 | 2f | 53 | 79 | 73 | 74 | 65 | 6d |
| f0 | 0c | 00 | 14 | 00 | 15 | 01 | 00 | 03 | 6f | 75 | 74 | 01 | 00 | 15 | 4c | 6a |
| 100 | 61 | 76 | 61 | 2f | 69 | 6f | 2f | 50 | 72 | 69 | 6e | 74 | 53 | 74 | 72 | 65 |
| 110 | 61 | 6d | 3b | 08 | 00 | 17 | 01 | 00 | 27 | 48 | 65 | 6c | 6c | 6f | 20 | 77 |
| 120 | 6f | 72 | 6c | 64 | 2c | 20 | 77 | 65 | 6c | 63 | 6f | 6d | 65 | 20 | 74 | 6f |
| 130 | 20 | 4d | 6f | 62 | 69 | 6c | 65 | 66 | 69 | 73 | 68 | 2e | 63 | 6f | 6d | 2e |
| 140 | 0a | 00 | 19 | 00 | 1b | 07 | 00 | 1a | 01 | 00 | 13 | 6a | 61 | 76 | 61 | 2f |
| 150 | 69 | 6f | 2f | 50 | 72 | 69 | 6e | 74 | 53 | 74 | 72 | 65 | 61 | 6d | 0c | 00 |
| 160 | 1c | 00 | 1d | 01 | 00 | 07 | 70 | 72 | 69 | 6e | 74 | 6c | 6e | 01 | 00 | 15 |
| 170 | 28 | 4c | 6a | 61 | 76 | 61 | 2f | 6c | 61 | 6e | 67 | 2f | 53 | 74 | 72 | 69 |
| 180 | 6e | 67 | 3b | 29 | 56 | 01 | 00 | 04 | 61 | 72 | 67 | 73 | 01 | 00 | 13 | 5b |
| 190 | 4c | 6a | 61 | 76 | 61 | 2f | 6c | 61 | 6e | 67 | 2f | 53 | 74 | 72 | 69 | 6e |
| 1a0 | 67 | 3b | 01 | 00 | 0a | 53 | 6f | 75 | 72 | 63 | 65 | 46 | 69 | 6c | 65 | 01 |
| 1b0 | 00 | 0f | 48 | 65 | 6c | 6c | 6f | 57 | 6f | 72 | 6c | 64 | 2e | 6a | 61 | 76 |
| 1c0 | 61 | 00 | 21 | 00 | 01 | 00 | 03 | 00 | 00 | 00 | 00 | 00 | 02 | 00 | 01 | 00 |
| 1d0 | 05 | 00 | 06 | 00 | 01 | 00 | 07 | 00 | 00 | 00 | 2f | 00 | 01 | 00 | 01 | 00 |
| 1e0 | 00 | 00 | 05 | 2a | b7 | 00 | 08 | b1 | 00 | 00 | 00 | 02 | 00 | 0a | 00 | 00 |
| 1f0 | 00 | 06 | 00 | 01 | 00 | 00 | 00 | 03 | 00 | 0b | 00 | 00 | 00 | 0c | 00 | 01 |
| 200 | 00 | 00 | 00 | 05 | 00 | 0c | 00 | 0d | 00 | 00 | 00 | 09 | 00 | 0e | 00 | 0f |
| 210 | 00 | 01 | 00 | 07 | 00 | 00 | 00 | 37 | 00 | 02 | 00 | 01 | 00 | 00 | 00 | 09 |
| 220 | b2 | 00 | 10 | 12 | 16 | b6 | 00 | 18 | b1 | 00 | 00 | 00 | 02 | 00 | 0a | 00 |
| 230 | 00 | 00 | 0a | 00 | 02 | 00 | 00 | 00 | 05 | 00 | 08 | 00 | 06 | 00 | 0b | 00 |
| 240 | 00 | 00 | 0c | 00 | 01 | 00 | 00 | 00 | 09 | 00 | 1e | 00 | 1f | 00 | 00 | 00 |
| 250 | 01 | 00 | 20 | 00 | 00 | 00 | 02 | 00 | 21 |
| Byte index range | Description | Value | Remark |
| 00-03 | magic (u4) | cafebabe | The magic number is common to all Java class files. |
| 04-05 | minor version (u2) | 0 | Minor and Major versions are version numbers of the compiler that created the class file. |
| 06-07 | major version (u2) | 50 |
Minor and Major versions are version numbers of the compiler that created the class file. Class file (Major.minor) version = 50.0 The class file is compiled by JVM 1.6 (Java SE 6) and is supported by JVM 1.7 (Java SE 7) |
| 08-09 | constant pool count (u2) | 34 | Constant pool count is the number of entries in the constant pool table. |
| 0a -1c0 | constant pool | See Constant Pool Table | Constant pool is a table of variable length entries defined by a leading tag byte followed by data. The constant pool holds Strings, numeric values, class references, method references, and so on. |
| 1c1-1c2 | access flags (u2) | public | Access flags are modifiers used for the class or interface (such as public, final, and the like). |
| 1c3-1c4 | this class (u2) | com.mobilefish.test.HelloWorld | This class is an index into the constant pool (pointing to type CONSTANT_Class), which represents the class or interface defined by this class file. |
| 1c5-1c6 | super class (u2) | java.lang.Object | Super class is an index into the constant pool (pointing to type CONSTANT_Class), which represents the superclass of this class. The only exception is java.lang.Object whose superclass index is 0. |
| 1c7-1c8 | interfaces count (u2) | 0 | Interface count is the number of entries in the interface table. |
| interfaces info | Not available | ||
| 1c9-1ca | fields count (u2) | 0 | Field count is the number of entries in the field table. |
| fields info | Not available | ||
| 1cb-1cc | methods count (u2) | 2 | Method count is the number of entries in the method table. |
| 1cd-24e | methods info | See Methods, Methods attributes and Code atributes table below | Method info is an array of variable-length entries representing each method defined (not inherited) by this class. |
| 24f-250 | attributes count (u2) | 1 | Attribute count is the number of entries in the attribute table. |
| 251-258 | attributes info | See Class attributes table below | Attribute info is an array of variable-length entries representing each attribute of this class. Attributes give additional information about the class, such as the source file. |
| CP Index | Byte index range | Tag (u1) | Constant Type | Value (*1) | Ref1 (*2) | Ref2 (*3) | Class or String | Name | Type |
| 0 | The constant pool index always start with index 0 but the entry is not included in the class file | ||||||||
| 1 | a-c | 7 | Class Ref | 2 | com.mobilefish.test.HelloWorld | ||||
| 2 | d-2d | 1 | UTF8 | com/mobilefish/test/HelloWorld | |||||
| 3 | 2e-30 | 7 | Class Ref | 4 | java.lang.Object | ||||
| 4 | 31-43 | 1 | UTF8 | java/lang/Object | |||||
| 5 | 44-4c | 1 | UTF8 | <init> | |||||
| 6 | 4d-52 | 1 | UTF8 | ()V | |||||
| 7 | 53-59 | 1 | UTF8 | Code | |||||
| 8 | 5a-5e | 10 | Method Ref | 3 | 9 | java.lang.Object | <init> | ()V | |
| 9 | 5f-63 | 12 | Name and Type | 5 | 6 | <init> | ()V | ||
| 10 | 64-75 | 1 | UTF8 | LineNumberTable | |||||
| 11 | 76-8a | 1 | UTF8 | LocalVariableTable | |||||
| 12 | 8b-91 | 1 | UTF8 | this | |||||
| 13 | 92-b4 | 1 | UTF8 | Lcom/mobilefish/test/HelloWorld; | |||||
| 14 | b5-bb | 1 | UTF8 | main | |||||
| 15 | bc-d4 | 1 | UTF8 | ([Ljava/lang/String;)V | |||||
| 16 | d5-d9 | 9 | Field Ref | 17 | 19 | java.lang.System | out | Ljava.io.PrintStream; | |
| 17 | da-dc | 7 | Class Ref | 18 | java.lang.System | ||||
| 18 | dd-ef | 1 | UTF8 | java/lang/System | |||||
| 19 | f0-f4 | 12 | Name and Type | 20 | 21 | out | Ljava.io.PrintStream; | ||
| 20 | f5-fa | 1 | UTF8 | out | |||||
| 21 | fb-112 | 1 | UTF8 | Ljava/io/PrintStream; | |||||
| 22 | 113-115 | 8 | String Ref | 23 | Hello world, welcome to Mobilefish.com. | ||||
| 23 | 116-13f | 1 | UTF8 | Hello world, welcome to Mobilefish.com. | |||||
| 24 | 140-144 | 10 | Method Ref | 25 | 27 | java.io.PrintStream | println | (Ljava.lang.String;)V | |
| 25 | 145-147 | 7 | Class Ref | 26 | java.io.PrintStream | ||||
| 26 | 148-15d | 1 | UTF8 | java/io/PrintStream | |||||
| 27 | 15e-162 | 12 | Name and Type | 28 | 29 | println | (Ljava.lang.String;)V | ||
| 28 | 163-16c | 1 | UTF8 | println | |||||
| 29 | 16d-184 | 1 | UTF8 | (Ljava/lang/String;)V | |||||
| 30 | 185-18b | 1 | UTF8 | args | |||||
| 31 | 18c-1a1 | 1 | UTF8 | [Ljava/lang/String; | |||||
| 32 | 1a2-1ae | 1 | UTF8 | SourceFile | |||||
| 33 | 1af-1c0 | 1 | UTF8 | HelloWorld.java | |||||
| Index | Byte index range | Access Flag (u2) | Name (u2) | Descriptor (u2) | Attributes count (u2) |
| 0 | 1cd-1d4 | public | <init> | ()V | 1 |
| 1 | 20a-211 | public static | main | ([Ljava/lang/String;)V | 1 |
| Index | Ref to Methods index | Byte index range | Name (u2) | Attribute length (u4) |
| 0 | 0 | 1d5-1da | Code | 47 |
| 1 | 1 | 212-217 | Code | 55 |
| Index | Ref to Method attributes index | Byte index range | max stack (u2) (maximum size of the operand stack) | max locals (u2) (maximum number of local variables allocated for this method) | code length (u4) | code array (*1) | exception table length (u2) | exception array (*2) | attributes count (u2) |
| 0 | 0 | 1db-1eb | 1 | 1 | 5 | 2a b7 00 08 b1 | 0 | 2 | |
| 1 | 1 | 218-22c | 2 | 1 | 9 | b2 00 10 12 16 b6 00 18 b1 | 0 | 2 |
| # | Ref to Code attributes index | Byte index range | line number table length (u2) | start pc (u2) | linenumber (u2) |
| 0 | 0 | 1f2-1f7 | 1 | 0 | 3 |
| 1 | 1 | 233-23c | 2 | 0 8 | 5 6 |
| # | Ref to Code attributes index | Byte index range | localvariable table length (u2) | start pc (u2) | length (u2) | name index (u2) | descriptor index (u2) | index (u2) | name (*1) | descriptor (*2) |
| 0 | 0 | 1fe-209 | 1 | 0 | 5 | 12 | 13 | 0 | this | Lcom/mobilefish/test/HelloWorld; |
| 1 | 1 | 243-24e | 1 | 0 | 9 | 30 | 31 | 0 | args | [Ljava/lang/String; |
| # | Byte index range | Name (u2) | Attribute length (u2) | Value (*1) |
| 0 | 251-258 | SourceFile | 2 | value (u2)=HelloWorld.java |