Java Core trainee

Что такое record (Java 14+)?

Ответ

Короткий способ описать иммутабельный DTO. Автоматически генерируются: конструктор, геттеры (имя поля без get-), equals, hashCode, toString. record User(String name, int age) {} — всё. Меньше boilerplate, чем Lombok.

Разбор: record (Java 14+) — это компактное объявление иммутабельного класса-носителя данных, для которого компилятор сам генерирует конструктор, аксессоры без префикса get, а также equals, hashCode и toString по значениям полей. Ловушки: record — часть языка, а не аннотация Lombok; поля финальные и сравнение идёт по значению, а не по ссылке; и это не enum, хотя оба генерируют служебные методы.

Хочешь так же по своей компании — с вопросами по грейдам и задачами? Закажи гайд или забери свежее в Telegram.

Заказать гайд Пройти тест
новые гайды и свежие вопросы с собесов — первыми в Telegram Смотреть гайды Подписаться