Лучшие практики для возврата ссылок на объекты
Рассмотрим этот фрагмент кода:
class MyClass{
private List myList;
//...
public List getList(){
return myList;
}
}
Поскольку Java передает ссылки на объекты по значению, я понимаю, что любой объект, вызывающийgetList()
получит ссылку наmyList
, позволяя это изменитьmyList
несмотря на этоprivate
, Это верно?
И, если это правильно, я должен использовать
return new LinkedList(myList);
создать копию и передать обратно ссылку на копию, а не на оригинал, чтобы предотвратить несанкционированный доступ к списку, на который ссылаетсяmyList
?