Встречается на собеседованиях • сегодня
Как создать Immutable объект
Immutable объект — это объект, состояние которого нельзя изменить после создания. Вот ключевые шаги для его создания:
1. **Сделайте класс `final`**, чтобы его нельзя было наследовать.
2. **Все поля должны быть `final` и инициализироваться в конструкторе**.
3. **Не предоставляйте сеттеров** (методов, изменяющих поля).
4. **Защитите изменяемые поля** — возвращайте копии, а не оригиналы.
5. **Избегайте утечки `this`** — не передавайте его в методы во время конструирования.
Пример:
```java
public final class ImmutablePerson {
private final String name;
private final List hobbies;
public ImmutablePerson(String name, List hobbies) {
this.name = name;
this.hobbies = new ArrayList<>(hobbies); // защитная копия
}
public String getName() { return name; }
public List getHobbies() {
return new ArrayList<>(hobbies); // возвращаем копию
}
}
```

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