1#
2# sample small-but-valid classfile
3#
4
5cafe babe  # magic
60000       # minor_version
7002e       # major_version
8001f       # constant_pool_count
9
10#
11# constant_pool
12#
1301 0005 "Small"              # 0001: utf8["Small"]
1401 0010 "java/lang/Object"   # 0002: utf8["java/lang/Object"]
1507 0001                      # 0003: class[Small]
1607 0002                      # 0004: class[java/lang/Object]
1701 000d "ConstantValue"      # 0005: utf8["ConstantValue"]
1801 0001 "a"                  # 0006: utf8["a"]
1901 0001 "b"                  # 0007: utf8["b"]
2001 0001 "c"                  # 0008: utf8["c"]
2101 0001 "d"                  # 0009: utf8["d"]
2201 0001 "e"                  # 000a: utf8["e"]
2301 0001 "f"                  # 000b: utf8["f"]
2401 0001 "g"                  # 000c: utf8["g"]
2501 0001 "h"                  # 000d: utf8["h"]
2601 0001 "i"                  # 000e: utf8["i"]
2708 0001                      # 000f: string["Small"]
2803 8191a1b1                  # 0010: integer[0x8191a1b1]
2904 bffeb852                  # 0011: float[-1.99]
3005 80818283 f0f1f2f3         # 0012: long[0x80818283f0f1f2f3]
3106 bfffd70a 3d70a3d7         # 0014: double[-1.99]
3201 0001 "B"                  # 0016: utf8["B"]
3301 0001 "C"                  # 0017: utf8["C"]
3401 0001 "D"                  # 0018: utf8["D"]
3501 0001 "F"                  # 0019: utf8["F"]
3601 0001 "I"                  # 001a: utf8["I"]
3701 0001 "J"                  # 001b: utf8["J"]
3801 0001 "S"                  # 001c: utf8["S"]
3901 0001 "Z"                  # 001d: utf8["Z"]
4001 0012 "Ljava/lang/String;" # 001e: utf8["Ljava/lang/String;"]
41
420021  # access_flags
430003  # this_class
440004  # super_class
450000  # interfaces_count
46
470009  # fields_count
48
49# fields[0]
500001  # access_flags
510006  # "a"
520016  # "B"
530001  # attributes_count
54# attributes[0]
550005      # name
5600000002  # length
570010      # value
58
59# fields[1]
600002  # access_flags
610007  # "b"
620017  # "C"
630001  # attributes_count
64# attributes[0]
650005      # name
6600000002  # length
670010      # value
68
69# fields[2]
700004  # access_flags
710008  # "c"
720018  # "D"
730001  # attributes_count
74# attributes[0]
750005      # name
7600000002  # length
770014      # value
78
79# fields[3]
800008  # access_flags
810009  # "d"
820019  # "F"
830001  # attributes_count
84# attributes[0]
850005      # name
8600000002  # length
870011      # value
88
89# fields[4]
900010  # access_flags
91000a  # "e"
92001a  # "I"
930001  # attributes_count
94# attributes[0]
950005      # name
9600000002  # length
970010      # value
98
99# fields[5]
1000040  # access_flags
101000b  # "f"
102001b  # "J"
1030001  # attributes_count
104# attributes[0]
1050005      # name
10600000002  # length
1070012      # value
108
109# fields[6]
1100080  # access_flags
111000c  # "g"
112001c  # "Z"
1130001  # attributes_count
114# attributes[0]
1150005      # name
11600000002  # length
1170010      # value
118
119# fields[7]
1200019  # access_flags
121000d  # "h"
122001d  # "S"
1230001  # attributes_count
124# attributes[0]
1250005      # name
12600000002  # length
1270010      # value
128
129# fields[8]
1300019  # access_flags
131000e  # "i"
132001e  # "Ljava/lang/String;"
1330001  # attributes_count
134# attributes[0]
1350005      # name
13600000002  # length
137000f      # value
138
1390000  # methods_count
1400000  # attributes_count
141