Junior — Middle
97
Come si può fare in modo che un array restituito tramite un getter non possa essere modificato dall'esterno?
Le aziende dove è stato chiesto
Risposta dell'AI
sobes.tech AI
Чтобы массив, возвращаемый через геттер, нельзя было изменить извне, нужно возвращать не сам внутренний массив, а его копию. Иначе внешний код получит ссылку на тот же массив и сможет изменить его содержимое.
Пример:
public class MyClass {
private int[] data;
public MyClass(int[] data) {
this.data = data.clone(); // копируем при сохранении
}
public int[] getData() {
return data.clone(); // возвращаем копию, чтобы защитить внутреннее состояние
}
}
Такой подход гарантирует, что изменения массива, полученного через геттер, не повлияют на внутреннее состояние объекта.