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

Как реализовать иммутабельный класс с полем коллекцией

Для создания иммутабельного класса с полем-коллекцией необходимо: 1. Сделать класс и все его поля `final` 2. Инициализировать коллекцию в конструкторе 3. Возвращать только неизменяемые копии или обертки коллекции ```java import java.util.Collections; import java.util.List; public final class ImmutableClass { private final List items; public ImmutableClass(List items) { this.items = Collections.unmodifiableList(new ArrayList<>(items)); } public List getItems() { return Collections.unmodifiableList(items); } } ``` Ключевые моменты: - Конструктор создает защитную копию переданной коллекции - `Collections.unmodifiableList` делает коллекцию доступной только для чтения - Геттер возвращает неизменяемую обертку, а не оригинал - Класс помечен как `final` чтобы предотвратить наследование
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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