Interface FieldModel
- All Superinterfaces:
AttributedElement
,ClassElement
,ClassFileElement
,CompoundElement<FieldElement>
,Iterable<FieldElement>
public sealed interface FieldModel
extends CompoundElement<FieldElement>, AttributedElement, ClassElement
Models a field. A field can be viewed as a composition of
FieldElement
s, or by random access via accessor
methods if only specific parts of the field is needed.
Fields can be obtained from ClassModel.fields()
, or in the traversal
of member elements of a class.
ClassBuilder.withField(String, ClassDesc, Consumer)
is the main way
to construct fields. ClassBuilder.transformField(java.lang.classfile.FieldModel, java.lang.classfile.FieldTransform)
allows creating a
new field by selectively processing the original field elements and directing
the results to a field builder.
All field attributes are accessible as member elements.
- See Java Virtual Machine Specification:
-
4.5 Fields
- Since:
- 24
- See Also:
-
Method Summary
Methods declared in interface java.lang.classfile.AttributedElement
attributes, findAttribute, findAttributes
Methods declared in interface java.lang.classfile.CompoundElement
elementList, elementStream, forEach, iterator, toDebugString
Methods declared in interface java.lang.Iterable
spliterator
-
Method Details
-
flags
-
parent
Optional<ClassModel> parent()Returns the class model this field is a member of, if known.- Returns:
- the class model this field is a member of, if known
-
fieldName
-
fieldType
Utf8Entry fieldType()Returns the field descriptor string of this field.- Returns:
- the field descriptor string of this field
-
fieldTypeSymbol
Returns the field type, as a symbolic descriptor.- Returns:
- the field type, as a symbolic descriptor
-