Spec-Zone.ru › OpenJDK 27

Interface RecordAttribute

All Superinterfaces:
Attribute<RecordAttribute>, ClassElement, ClassFileElement
public sealed interface RecordAttribute extends Attribute<RecordAttribute>, ClassElement
Models the Record attribute (JVMS §4.7.30), which indicates that this class is a record class and the record components.

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

The attribute was introduced in the Java SE Platform version 16, major version 60.

See Java Virtual Machine Specification:
4.7.30 The Record Attribute
Since:
24
See Also:
  • Attributes.record()
  • Class.isRecord()
  • Class.getRecordComponents()

Method Summary

Modifier and Type Method Description
List<RecordComponentInfo> components()
Returns the components of this record class.
static RecordAttribute of(RecordComponentInfo... components)
Returns a Record attribute.
static RecordAttribute of(List<RecordComponentInfo> components)
Returns a Record attribute.

Methods declared in interface Attribute

attributeMapper, attributeName
Modifier and Type Method Description
AttributeMapper<RecordAttribute> attributeMapper()
Returns the AttributeMapper associated with this attribute.
Utf8Entry attributeName()
Returns the name of the attribute.

Method Details

components

List<RecordComponentInfo> components()
Returns the components of this record class.
Returns:
the components of this record class
See Also:
  • Class.getRecordComponents()

of

static RecordAttribute of(List<RecordComponentInfo> components)
Returns a Record attribute.
Parameters:
components - the record components
Returns:
a Record attribute
Throws:
IllegalArgumentException - if the number of record components exceeds the limit of u2

of

static RecordAttribute of(RecordComponentInfo... components)
Returns a Record attribute.
Parameters:
components - the record components
Returns:
a Record attribute
Throws:
IllegalArgumentException - if the number of record components exceeds the limit of u2

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples. Other versions.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2026, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API