# Uses of Package
java.lang.classfile.attribute

Packages that use java.lang.classfile.attribute
Package
Description
java.lang.classfile
Provides classfile parsing, generation, and transformation library.
java.lang.classfile.attribute
Provides interfaces describing `class` file attributes for the `java.lang.classfile` library.

Classes in java.lang.classfile.attribute used by java.lang.classfile
Class
Description
AnnotationDefaultAttribute
Models the `AnnotationDefault` attribute (JVMS §4.7.22), which records the default value (JLS §9.6.2) for the annotation interface element defined by this method.
BootstrapMethodsAttribute
Models the `BootstrapMethods` attribute (JVMS §4.7.23), which stores symbolic information for the execution of bootstrap methods, used by dynamically-computed call sites and constants.
CharacterRangeTableAttribute
Models the `CharacterRangeTable` attribute, which is a bidirectional mapping from ranges of positions in the source file to ranges of indices into the `code` array.
CodeAttribute
Models the `Code` attribute (JVMS §4.7.3), which contains the bytecode of this method.
CompilationIDAttribute
Models the `CompilationID` attribute, which records the compilation time of the `class` file.
ConstantValueAttribute
Models the `ConstantValue` attribute (JVMS §4.7.2), which indicates this field's value is a constant and that constant value.
DeprecatedAttribute
Models the `Deprecated` attribute (JVMS §4.7.15), which indicates this structure has been superseded.
EnclosingMethodAttribute
Models the `EnclosingMethod` attribute (JVMS §4.7.7), which indicates that this class is a local or anonymous class, and indicates the enclosing method or constructor of this class if this class is enclosed in exactly one method or constructor.
ExceptionsAttribute
Models the `Exceptions` attribute (JVMS §4.7.5), which records the exceptions declared to be thrown by this method.
InnerClassesAttribute
Models the `InnerClasses` attribute (JVMS §4.7.6), which records which classes referenced by this `class` file are nested classes.
LineNumberTableAttribute
Models the `LineNumberTable` attribute (JVMS §4.7.12), which records the mapping between indexes into the `code` array and line numbers in the source file.
LocalVariableTableAttribute
Models the `LocalVariableTable` attribute (JVMS §4.7.13), which records debug information about local variables.
LocalVariableTypeTableAttribute
Models the `LocalVariableTypeTable` attribute (JVMS §4.7.14), which records debug information about local variables with generic types.
MethodParametersAttribute
Models the `MethodParameters` attribute (JVMS §4.7.24), which records reflective information about this method's parameters such as access modifiers.
ModuleAttribute
Models the `Module` attribute (JVMS §4.7.25), which always appears on classes that represent module descriptors.
ModuleHashesAttribute
Models the `ModuleHashes` attribute, which appears on classes that represent module descriptors to capture the hashes of a set of co-delivered modules.
ModuleMainClassAttribute
Models the `ModuleMainClass` attribute (JVMS §4.7.27), which appears on classes that represent module descriptors to indicate the main class of the module.
ModulePackagesAttribute
Models the `ModulePackages` attribute (JVMS §4.7.26), which can appear on classes that represent module descriptors to indicate packages in the module used by the module descriptor.
ModuleResolutionAttribute
Models the `ModuleResolution` attribute, which can appear on classes that represent module descriptors, to capture resolution metadata for modules.
ModuleTargetAttribute
Models the `ModuleTarget` attribute, which can appear on classes that represent module descriptors, to represent constraints on the target platform.
NestHostAttribute
Models the `NestHost` attribute (JVMS §4.7.28), which indicates this class is a member of a nest and the host class of the nest.
NestMembersAttribute
Models the `NestMembers` attribute (JVMS §4.7.29), which indicates that this class is the host of a nest and the other nest members.
PermittedSubclassesAttribute
Models the `PermittedSubclasses` attribute (JVMS §4.7.31), which indicates this class or interface is sealed, and which classes or interfaces may extend or implement this class or interface.
RecordAttribute
Models the `Record` attribute (JVMS §4.7.30), which indicates that this class is a record class and the record components.
RuntimeInvisibleAnnotationsAttribute
Models the `RuntimeInvisibleAnnotations` attribute (JVMS §4.7.17), which stores declaration annotations on this structure that are visible to `class` file consumers but are not visible to core reflection.
RuntimeInvisibleParameterAnnotationsAttribute
Models the `RuntimeInvisibleParameterAnnotations` attribute (JVMS §4.7.19), which stores declaration annotations on the method parameters of this method that are visible to `class` file consumers but are not visible to core reflection.
RuntimeInvisibleTypeAnnotationsAttribute
Models the `RuntimeInvisibleTypeAnnotations` attribute (JVMS §4.7.21), which stores type-use annotations for the annotated uses of types in this structure that are visible to `class` file consumers but are not visible to core reflection.
RuntimeVisibleAnnotationsAttribute
Models the `RuntimeVisibleAnnotations` attribute (JVMS §4.7.16), which stores declaration annotations on this structure that are visible to both `class` file consumers and core reflection.
RuntimeVisibleParameterAnnotationsAttribute
Models the `RuntimeVisibleParameterAnnotations` attribute (JVMS §4.7.18), which stores declaration annotations on the method parameters of this method that are visible to both `class` file consumers and core reflection.
RuntimeVisibleTypeAnnotationsAttribute
Models the `RuntimeVisibleTypeAnnotations` attribute (JVMS §4.7.20), which stores type-use annotations for the annotated uses of types in this structure that are visible to both `class` file consumers and core reflection.
SignatureAttribute
Models the `Signature` attribute (JVMS §4.7.9), which indicates the generic signature of this structure.
SourceDebugExtensionAttribute
Models the `SourceDebugExtension` attribute (JVMS §4.7.11), which stores arbitrary modified UTF-8 data.
SourceFileAttribute
Models the `SourceFile` attribute (JVMS §4.7.10), which indicates the name of the source file from which this `class` file was compiled.
SourceIDAttribute
Models the `SourceID` attribute, which records the last modified time of the source file from which this `class` file was compiled.
StackMapTableAttribute
Models the `StackMapTable` attribute (JVMS §4.7.4), which is used for verification by type checking (§4.10.1).
SyntheticAttribute
Models the `Synthetic` attribute (JVMS §4.7.8), which marks a class member as implementation-specific artifacts.
Classes in java.lang.classfile.attribute used by java.lang.classfile.attribute
Class
Description
AnnotationDefaultAttribute
Models the `AnnotationDefault` attribute (JVMS §4.7.22), which records the default value (JLS §9.6.2) for the annotation interface element defined by this method.
BootstrapMethodsAttribute
Models the `BootstrapMethods` attribute (JVMS §4.7.23), which stores symbolic information for the execution of bootstrap methods, used by dynamically-computed call sites and constants.
CharacterRangeInfo
Models a single character range entry in the `CharacterRangeTableAttribute`.
CharacterRangeTableAttribute
Models the `CharacterRangeTable` attribute, which is a bidirectional mapping from ranges of positions in the source file to ranges of indices into the `code` array.
CodeAttribute
Models the `Code` attribute (JVMS §4.7.3), which contains the bytecode of this method.
CompilationIDAttribute
Models the `CompilationID` attribute, which records the compilation time of the `class` file.
ConstantValueAttribute
Models the `ConstantValue` attribute (JVMS §4.7.2), which indicates this field's value is a constant and that constant value.
DeprecatedAttribute
Models the `Deprecated` attribute (JVMS §4.7.15), which indicates this structure has been superseded.
EnclosingMethodAttribute
Models the `EnclosingMethod` attribute (JVMS §4.7.7), which indicates that this class is a local or anonymous class, and indicates the enclosing method or constructor of this class if this class is enclosed in exactly one method or constructor.
ExceptionsAttribute
Models the `Exceptions` attribute (JVMS §4.7.5), which records the exceptions declared to be thrown by this method.
InnerClassesAttribute
Models the `InnerClasses` attribute (JVMS §4.7.6), which records which classes referenced by this `class` file are nested classes.
InnerClassInfo
Models a single entry in the `InnerClassesAttribute`.
LineNumberInfo
Models a single line number entry in the `LineNumberTableAttribute`.
LineNumberTableAttribute
Models the `LineNumberTable` attribute (JVMS §4.7.12), which records the mapping between indexes into the `code` array and line numbers in the source file.
LocalVariableInfo
Models a single local variable in the `LocalVariableTableAttribute`.
LocalVariableTableAttribute
Models the `LocalVariableTable` attribute (JVMS §4.7.13), which records debug information about local variables.
LocalVariableTypeInfo
Models a single local variable in the `LocalVariableTypeTableAttribute`.
LocalVariableTypeTableAttribute
Models the `LocalVariableTypeTable` attribute (JVMS §4.7.14), which records debug information about local variables with generic types.
MethodParameterInfo
Models a single method parameter in the `MethodParametersAttribute`.
MethodParametersAttribute
Models the `MethodParameters` attribute (JVMS §4.7.24), which records reflective information about this method's parameters such as access modifiers.
ModuleAttribute
Models the `Module` attribute (JVMS §4.7.25), which always appears on classes that represent module descriptors.
ModuleAttribute.ModuleAttributeBuilder
A builder for `Module` attributes.
ModuleExportInfo
Models a single "exports" declaration in the `ModuleAttribute`.
ModuleHashesAttribute
Models the `ModuleHashes` attribute, which appears on classes that represent module descriptors to capture the hashes of a set of co-delivered modules.
ModuleHashInfo
Models hash information for a single module in the `ModuleHashesAttribute`.
ModuleMainClassAttribute
Models the `ModuleMainClass` attribute (JVMS §4.7.27), which appears on classes that represent module descriptors to indicate the main class of the module.
ModuleOpenInfo
Models a single "opens" declaration in the `ModuleAttribute`.
ModulePackagesAttribute
Models the `ModulePackages` attribute (JVMS §4.7.26), which can appear on classes that represent module descriptors to indicate packages in the module used by the module descriptor.
ModuleProvideInfo
Models a single "provides" declaration in the `ModuleAttribute`.
ModuleRequireInfo
Models a single "requires" declaration in the `ModuleAttribute`.
ModuleResolutionAttribute
Models the `ModuleResolution` attribute, which can appear on classes that represent module descriptors, to capture resolution metadata for modules.
ModuleTargetAttribute
Models the `ModuleTarget` attribute, which can appear on classes that represent module descriptors, to represent constraints on the target platform.
NestHostAttribute
Models the `NestHost` attribute (JVMS §4.7.28), which indicates this class is a member of a nest and the host class of the nest.
NestMembersAttribute
Models the `NestMembers` attribute (JVMS §4.7.29), which indicates that this class is the host of a nest and the other nest members.
PermittedSubclassesAttribute
Models the `PermittedSubclasses` attribute (JVMS §4.7.31), which indicates this class or interface is sealed, and which classes or interfaces may extend or implement this class or interface.
RecordAttribute
Models the `Record` attribute (JVMS §4.7.30), which indicates that this class is a record class and the record components.
RecordComponentInfo
Models a single record component in the `RecordAttribute`.
RuntimeInvisibleAnnotationsAttribute
Models the `RuntimeInvisibleAnnotations` attribute (JVMS §4.7.17), which stores declaration annotations on this structure that are visible to `class` file consumers but are not visible to core reflection.
RuntimeInvisibleParameterAnnotationsAttribute
Models the `RuntimeInvisibleParameterAnnotations` attribute (JVMS §4.7.19), which stores declaration annotations on the method parameters of this method that are visible to `class` file consumers but are not visible to core reflection.
RuntimeInvisibleTypeAnnotationsAttribute
Models the `RuntimeInvisibleTypeAnnotations` attribute (JVMS §4.7.21), which stores type-use annotations for the annotated uses of types in this structure that are visible to `class` file consumers but are not visible to core reflection.
RuntimeVisibleAnnotationsAttribute
Models the `RuntimeVisibleAnnotations` attribute (JVMS §4.7.16), which stores declaration annotations on this structure that are visible to both `class` file consumers and core reflection.
RuntimeVisibleParameterAnnotationsAttribute
Models the `RuntimeVisibleParameterAnnotations` attribute (JVMS §4.7.18), which stores declaration annotations on the method parameters of this method that are visible to both `class` file consumers and core reflection.
RuntimeVisibleTypeAnnotationsAttribute
Models the `RuntimeVisibleTypeAnnotations` attribute (JVMS §4.7.20), which stores type-use annotations for the annotated uses of types in this structure that are visible to both `class` file consumers and core reflection.
SignatureAttribute
Models the `Signature` attribute (JVMS §4.7.9), which indicates the generic signature of this structure.
SourceDebugExtensionAttribute
Models the `SourceDebugExtension` attribute (JVMS §4.7.11), which stores arbitrary modified UTF-8 data.
SourceFileAttribute
Models the `SourceFile` attribute (JVMS §4.7.10), which indicates the name of the source file from which this `class` file was compiled.
SourceIDAttribute
Models the `SourceID` attribute, which records the last modified time of the source file from which this `class` file was compiled.
StackMapFrameInfo
Models a stack map frame in a `StackMapTable` attribute (JVMS §4.7.4).
StackMapFrameInfo.ObjectVerificationTypeInfo
A stack value for an object type.
StackMapFrameInfo.SimpleVerificationTypeInfo
A simple stack value.
StackMapFrameInfo.UninitializedVerificationTypeInfo
An uninitialized stack value.
StackMapFrameInfo.VerificationTypeInfo
The type of a stack or local variable value.
StackMapTableAttribute
Models the `StackMapTable` attribute (JVMS §4.7.4), which is used for verification by type checking (§4.10.1).
SyntheticAttribute
Models the `Synthetic` attribute (JVMS §4.7.8), which marks a class member as implementation-specific artifacts.
UnknownAttribute
Models an unknown attribute read from a `class` file.