Я люблю проект Lombok, но в эти дни я читаю и пробую некоторые из новых функций Java 14.
Внутри новой возможности есть ключевое слово record , позволяющее создать класс с уже встроенной следующей функциональностью: конструктор, закрытые конечные поля, методы доступа, equals / hashCode, getters, toString методы.
Теперь мой вопрос: лучше полагаться на функцию Lombok или мы должны начать использовать функциональность записи:
Лучше использовать это:
record Person (String name, String surname) {}
или это:
@AllArgsConstructor
@ToString
@EqualsAndHashCode
public class GetterSetterExample {
@Getter private int name;
@Getter private int surname;
}
Каковы плюсы и минусы обоих подходов?
alice.phoneNumber()
вместо соглашения JavaBeans с префиксом get
, как в alice.getPhoneNumber()
.
record
функция является функцией предварительного просмотра , но еще не готова к использованию в производстве.
record
не будет работать для вещей, ожидающих получения и установки в стиле JavaBeans.