У меня есть список, который является частным членом в моем классе.
Я использовал getter и setter для получения и установки значений.
SOnar выдает ошибку - изменяемые члены не должны храниться или возвращаться напрямую.
Например: ABC и DEF - это два класса.
class ABC{
private List<DEF> defList;
public List<DEF> getDefList() { return defList; }
public void setDefList(List<DEF> defList) { this.defList = defList; }
После долгих поисков и поисков я понял, что геттер можно изменить следующим образом:
public List<DEF> getDefList() { return new ArrayList<>(defList); }
Когда я пытаюсь использовать сеттер аналогичным образом,
public void setDefList(List<DEF> defList) { this.defList.addAll(defList); }
тогда переменная начинает показывать
'private field 'defList' is never assigned.
Могу ли я знать, как правильно делать, когда это список, (список другого класса)
Примечание: оба ответа от Прасада Карунагоды и Льва Асо работают. Я не могу отметить оба как принятый ответ. Так что с запиской здесь