Module java.base
Package java.lang.classfile.attribute

# Interface AnnotationDefaultAttribute

≠
public abstract sealed interface AnnotationDefaultAttribute
extends java.lang.classfile.Attribute<java.lang.classfile.attribute.AnnotationDefaultAttribute>, java.lang.classfile.MethodElement
permits jdk.internal.classfile.impl.BoundAttribute.BoundAnnotationDefaultAttr, jdk.internal.classfile.impl.UnboundAttribute.UnboundAnnotationDefaultAttribute
Comparing jdk-master and valhalla-csr-open

All Superinterfaces:
  `AttributePREVIEW <AnnotationDefaultAttribute>, ClassFileElement, MethodElement`

public sealed interface AnnotationDefaultAttribute extends AttributePREVIEW <AnnotationDefaultAttribute>, MethodElement
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.

This attribute only appears on methods, and does not permit multiple instances in a method. It has a data dependency on the constant pool.

This attribute was introduced in the Java SE Platform version 5.0, major version 49.

See Java Language Specification:
  9.6.2 Defaults for Annotation Interface Elements
See Java Virtual Machine Specification:
  4.7.22 The `AnnotationDefault` Attribute
Since:
  24
See Also:
  - `Attributes.annotationDefault()`

## Methods

- =
  public abstract java.lang.classfile.AnnotationValue defaultValue()
- =
  public static java.lang.classfile.attribute.AnnotationDefaultAttribute of(java.lang.classfile.AnnotationValue arg0)

## Summary

Differences
| Elements | Comments | Descriptions | Total
Added | Changed | Removed | Added | Changed | Removed | Added | Changed | Removed
--- | --- | --- | --- | --- | --- | --- | --- | ---
AnnotationDefaultAttribute |  |  |  |  |  |  | 2 |  |  | 2
Total |  |  |  |  |  |  | 2 |  |  | 2