Встречается на собеседованиях • сегодня
Как создать иммутабельный объект
Чтобы создать иммутабельный (неизменяемый) объект в Java, нужно соблюдать несколько правил:
1. Сделать класс `final`, чтобы его нельзя было наследовать
2. Все поля должны быть `private final`
3. Не должно быть сеттеров
4. Если класс содержит изменяемые объекты, возвращайте их копии
Пример:
```java
public final class ImmutablePerson {
private final String name;
private final int age;
private final List hobbies;
public ImmutablePerson(String name, int age, List hobbies) {
this.name = name;
this.age = age;
this.hobbies = new ArrayList<>(hobbies); // защитная копия
}
public String getName() { return name; }
public int getAge() { return age; }
public List getHobbies() {
return new ArrayList<>(hobbies); // возвращаем копию
}
}
```
Для коллекций можно использовать `Collections.unmodifiableList()` вместо создания копии. Также можно использовать библиотеки вроде Lombok с `@Value` для автоматического создания иммутабельных классов.

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