Термин Java обновлено

Record: что это

Коротко

Record: неизменяемый класс-носитель данных (Java 16): компоненты в заголовке, генерируются private final поля, канонический конструктор, аксессоры, equals, hashCode, toString. Неявно final, не может наследовать классы, может реализовывать интерфейсы, компактный конструктор для валидации.

Определение

Неизменяемый класс-носитель данных (Java 16): компоненты в заголовке, генерируются private final поля, канонический конструктор, аксессоры, equals, hashCode, toString. Неявно final, не может наследовать классы, может реализовывать интерфейсы, компактный конструктор для валидации.

Из урока «Современная Java: record, sealed, pattern matching»

Record это неизменяемый носитель данных: поля private final, канонический конструктор, методы-аксессоры amount() (без get), equals, hashCode, toString по всем компонентам. Record неявно final и наследует java.lang.Record, поэтому не может расширять другой класс, но может реализовывать интерфейсы. Как JPA-сущность record не годится (нужен конструктор без аргументов и изменяемость), а как DTO и ключ HashMap идеален.

Читать урок целиком

Запомните, а не прочитайте

В тренажёре карточка вернётся, когда начнёт забываться. А билеты по Java проверят, что термин понятен в деле.