APIdia Launch Partner
Top Description Methods
java.lang.classfile.attribute

public sealed Interface SyntheticAttribute

extends Attribute<SyntheticAttribute>, ClassElement, MethodElement, FieldElement
permits BoundSyntheticAttribute, UnboundSyntheticAttribute
Known Direct Implementers
jdk.internal.classfile.impl.BoundAttribute.BoundSyntheticAttribute, jdk.internal.classfile.impl.UnboundAttribute.UnboundSyntheticAttribute
Annotations
@SuppressWarnings:doclint:reference
Imports
java.lang.classfile.*, .AttributeMapper.AttributeStability, java.lang.reflect.AccessFlag, jdk.internal.classfile.impl.BoundAttribute, .UnboundAttribute

Models the Synthetic attribute (JVMS 4.7.8), which marks a class member as implementation-specific artifacts.

This attribute can appear on classes, methods, and fields, and permits multiple instances in a structure. It has no data dependency.

This attribute was introduced in the Java SE Platform version 1.1, major version 45.

API Note

This attribute has been largely superseded by the ACC_SYNTHETIC modifier in newer class files. See java.compiler/javax.lang.model.util.Elements.Origin for a more in-depth description about the differences between synthetic and implicit (mandated) constructs generated by compilers.

Since
24
Java Virtual Machine Specification
4.7.8 The Synthetic Attribute
See Also
Attributes#synthetic(), AccessFlag#SYNTHETIC

Method Summary

Modifier and TypeMethod and Description
public static SyntheticAttribute

Returns:

a Synthetic attribute
of
()

Returns a Synthetic attribute.

Inherited from java.lang.classfile.Attribute:
attributeMapperattributeName

Method Detail

ofback to summary
public static SyntheticAttribute of()

Returns a Synthetic attribute.

Returns:SyntheticAttribute

a Synthetic attribute