Как уже отмечали другие, у вас не может быть неизменных массивов в Java.
Если вам абсолютно необходим метод, который возвращает массив, который не влияет на исходный массив, то вам нужно будет клонироватьмассив каждый раз:
public int[] getFooArray() {
return fooArray == null ? null : fooArray.clone();
}
Очевидно, что это довольно дорого (так как вы будете создавать полную копию каждый раз, когда вызываете геттер), но если вы не можете изменить интерфейс (использовать List
например) и не может рисковать, когда клиент меняет ваши внутренние данные, тогда это может быть необходимо.
Этот метод называется созданием защитной копии.