Встречается на собеседованиях • сегодня
Как предотвратить изменение Immutable объекта
Иммутабельный объект нельзя изменить после создания. Вот ключевые принципы для его реализации в Java:
1. Сделайте класс `final`, чтобы предотвратить наследование
2. Все поля должны быть `private final`
3. Не предоставляйте сеттеры
4. Для mutable полей (коллекции, массивы) делайте защитные копии:
```java
public final class ImmutableClass {
private final List values;
public ImmutableClass(List values) {
this.values = new ArrayList<>(values); // защитная копия
}
public List getValues() {
return Collections.unmodifiableList(values); // возвращаем неизменяемую обертку
}
}
```
5. Если класс содержит mutable объекты, не позволяйте изменять их состояние через методы
6. Для массивов используйте `Arrays.copyOf()` и возвращайте копию в геттерах

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы