Развёрнутое пояснение:
1. Создаётся изменяемый список config, в который добавляется название профиля prod.
2. Collections.unmodifiableList возвращает представление этого списка с запретом изменений через само представление; отдельная копия элементов не создаётся.
3. Через config исходный элемент заменяется на test. Операция разрешена: исходный список остаётся изменяемым. Замена не добавляет второй элемент.
4. При печати view читает актуальное содержимое исходного списка, поэтому вывод содержит единственный элемент test. Исключения нет, поскольку изменение выполнялось через config.
Почему это важно
Задача проверяет понимание коллекций Java и общего изменяемого состояния. Запрет изменений через представление не гарантирует неизменность конфигурации: компонент, сохранивший исходный список, может менять данные, которые видят остальные. Если нужен стабильный снимок, следует сначала скопировать список.
Post #8683
193
Чашечка Java