Встречается на собеседованиях • сегодня
Как сделать класс неизменяемым['Java']
Чтобы сделать класс неизменяемым в Java, нужно соблюдать несколько правил:
1. Объявить класс как `final`, чтобы его нельзя было наследовать.
2. Сделать все поля `private` и `final`, чтобы их нельзя было изменить после инициализации.
3. Не предоставлять сеттеров для полей.
4. Инициализировать все поля через конструктор.
5. Если класс содержит изменяемые объекты (например, коллекции), возвращайте их копии в геттерах.
Пример:
```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
интервью вопросы и ответы