Встречается на собеседованиях • сегодня

Как сделать класс иммутабельным

1. Объяви класс как `final`, чтобы предотвратить наследование. 2. Сделай все поля `private` и `final`, чтобы их нельзя было изменить после инициализации. 3. Не предоставляй сеттеры (setter methods). 4. Если класс содержит mutable объекты (например, коллекции), возвращай их копии в геттерах и инициализируй через копирование в конструкторе. 5. Избегай утечек ссылок — не передавай mutable объекты напрямую в конструктор или методы. Пример: ```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); // Defensive copy } public String getName() { return name; } public List getHobbies() { return new ArrayList<>(hobbies); // Defensive copy } } ```
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы