Чтобы сделать объект неизменяемым в Java, следуй двум основным правилам:
final – Запрети переприсваивание после инициализацииПрименяя эти принципы, поля объекта не могут быть изменены после его создания. Это гарантирует, что объект остаётся в согласованном, неизменяемом состоянии на протяжении всего своего существования.
Для полной неизменяемости также рассмотри:
final, чтобы предотвратить изменения в подклассахprivate для всех полейНеизменяемые объекты дают:
public final class ImmutableClass {
private final String name;
private final int value;
public ImmutableClass(String name, int value) {
this.name = name;
this.value = value;
}
}
Объявления всех полей как final достаточно для гарантии полной неизменяемости объекта Java, даже без удаления методов-сеттеров.
Новый — ещё не проверен сообществом
Вы