Sobes.tech
Back to questions
Junior — Middle
55

Какова роль и применение записей (records) в языке Java?

Companies where asked
Смарттек

Answer from AI

sobes.tech AI

В Java записи (records) — это специальный тип классов, предназначенный для хранения неизменяемых данных. Они были введены, чтобы упростить создание классов, которые в основном содержат поля и автоматически предоставляют методы для доступа к ним, а также методы equals(), hashCode() и toString().

Основные особенности записей:

  • Поля final и private по умолчанию.
  • Автоматически генерируются конструктор, геттеры, equals(), hashCode(), toString().
  • Записи являются иммутабельными (неизменяемыми) по своей природе.

Пример записи:

public record Point(int x, int y) {}

// Использование:
Point p = new Point(10, 20);
System.out.println(p.x()); // 10
System.out.println(p); // Point[x=10, y=20]

Записи удобны для создания DTO (Data Transfer Objects), ключей в коллекциях и других случаев, когда нужен простой контейнер для данных без дополнительной логики.