W3cubDocs

/OpenJDK 25

Interface AnnotationValue.OfConstant

All Superinterfaces:
AnnotationValue
All Known Subinterfaces:
AnnotationValue.OfBoolean, AnnotationValue.OfByte, AnnotationValue.OfChar, AnnotationValue.OfDouble, AnnotationValue.OfFloat, AnnotationValue.OfInt, AnnotationValue.OfLong, AnnotationValue.OfShort, AnnotationValue.OfString
Enclosing interface:
AnnotationValue
public static sealed interface AnnotationValue.OfConstant extends AnnotationValue permits AnnotationValue.OfString, AnnotationValue.OfDouble, AnnotationValue.OfFloat, AnnotationValue.OfLong, AnnotationValue.OfInt, AnnotationValue.OfShort, AnnotationValue.OfChar, AnnotationValue.OfByte, AnnotationValue.OfBoolean
Models a constant value of an element-value pair.
Sealed Class Hierarchy Graph:
Sealed class hierarchy graph for AnnotationValue/OfConstantSealed class hierarchy graph for AnnotationValue/OfConstant
Since:
24

Nested Class Summary

Field Summary

Method Summary

Modifier and Type Method Description
AnnotationConstantValueEntry constant()
Returns the constant pool entry backing this constant element.
Constable resolvedValue()
Returns the resolved live constant value, as an object.

Methods declared in interface AnnotationValue

tag

Method Details

constant

AnnotationConstantValueEntry constant()
Returns the constant pool entry backing this constant element.
API Note:
Different types of constant values may share the same type of entry because they have the same computational type. For example, AnnotationValue.OfInt and AnnotationValue.OfChar are both backed by IntegerEntry. Use resolvedValue() for a value of accurate type.
Returns:
the constant pool entry backing this constant element

resolvedValue

Constable resolvedValue()
Returns the resolved live constant value, as an object. The type of the returned value may be a wrapper class or String.
API Note:
The returned object, despite being Constable, may not describe the right constant for encoding the annotation value in a class file. For example, Character returned by AnnotationValue.OfChar describes itself as a DynamicConstantPoolEntry, but it is actually backed by IntegerEntry in annotation format. Use constant() for a correct constant pool representation.
Returns:
the resolved live constant value, as an object

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/classfile/AnnotationValue.OfConstant.html