У меня есть класс с геттером, который возвращает его приватное поле List.
Class MyClass {
private List<String> myList;
public List<String> getMyList(){
return myList;
}
}
Но вызывающий метод getter не может добавлять или удалять элементы из этого списка.
MyClass instance = new MyClass();
List<String> hisList = instance.getMyList();
hisList.add("new element");
Исключение UnsupportedOperationException.
Я знаю, что метод получения возвращаетссылка на этот список, но почему этот список только для чтения на стороне вызывающего абонента?Примечание. Я не возвращал Collections.unmodifiableList () в получателе.
ОБНОВЛЕНИЕ:
Извините, я создал список фиксированного размера с помощью Arrays.asList, вот почему;)