@@ -51,7 +51,7 @@ information about their length in bytes.
51
51
The integer format used in class files are unsigned integers of size 8/16/32
52
52
bit, which are named as ` u1 ` /` u2 ` /` u4 ` .
53
53
54
- \subsection Access flags
54
+ \subsection java-class-access-flags Access Flags
55
55
56
56
The JVM specification defines different access flags, e.g., ` final ` , ` static ` ,
57
57
` protected ` , ` private ` etc. where different ones are applicable to the class
@@ -61,14 +61,14 @@ values. Each of these values is defined as a constant with a name prefixed with
61
61
` ACC_ ` in JBMC, e.g., as ` #define ACC_PUBLIC 0x0001 ` or `#define ACC_ENUM
62
62
0x4000`.
63
63
64
- \subsection Constant Pool
64
+ \subsection java-class-constant-pool Constant Pool
65
65
66
66
The constant pool contains all strings and referred values that are used in the
67
67
.class. This includes the names of the class itself and its super-class, as well
68
68
as the names and signatures of all fields and methods. All strings in the
69
69
constant pool are in UTF-16 format.
70
70
71
- \subsection Fields
71
+ \subsection java-class-fields Fields
72
72
73
73
Each member variable of a class has a field entry with a corresponding field
74
74
information structure. This contains the name of the field, its raw JVM type
@@ -80,7 +80,7 @@ the generic type of an object if applicable.
80
80
The name of the field, the descriptor and the signature are all represented as
81
81
indices into the constant pool of the class file.
82
82
83
- \subsection Methods
83
+ \subsection java-class-methods Methods
84
84
85
85
Methods are represented in a similar way as fields. Each method has an
86
86
associated name, descriptor and optional signature entry in the constant pool
@@ -100,7 +100,7 @@ correct and creates code accordingly. The same holds true for information on
100
100
local variables. It is therefore advisable to compile Java projects with the
101
101
` -g ` option that adds debugging information in all cases.
102
102
103
- \subsection Attributes
103
+ \subsection java-class-attributes Attributes
104
104
105
105
The last section contains additional attributes, e.g., ` SourceFile ` which
106
106
specified from which source file the .class was compiled, ` BootstrapMethods `
0 commit comments