Встречается на собеседованиях • сегодня
Как добавить список в DTO, закрытый для модификации
Для создания неизменяемого списка в DTO можно использовать `Collections.unmodifiableList()` или `List.copyOf()` (Java 9+). Лучше инициализировать список через конструктор.
Пример:
```java
public class MyDto {
private final List items;
public MyDto(List items) {
this.items = List.copyOf(items); // или Collections.unmodifiableList(new ArrayList<>(items))
}
public List getItems() {
return items; // возвращаем неизменяемую копию
}
}
```
Важно:
1. Используйте `final` для поля
2. Делайте защитную копию в конструкторе
3. Возвращайте неизменяемую версию в геттере
4. Для Java <9 используйте `Collections.unmodifiableList()`
Это гарантирует, что внешний код не сможет изменить внутреннее состояние DTO.

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