На лекциях 8 уровня объясняют что когда инициализируешь ссылочные переменные то копируешь ссылку на объект, я решил проверить на массивах: Создал класс который создает одномерный массив, потом копирую его в другой массив (и тут типо должна ссылка на тот же массив копироваться а не сами значения массива) затем меняю в одной ячейке значение (array2[2] = 7) и по идее если я при копировании массива копировал только ссылку, то при выводе на экран ячейки будут равны array[2] = array2[2], но если смотреть консоль, то по факту не равны. получается при копировании массива копируется не ссылка а именно сам массив? а в каких случаях тогда именно ссылка копируется?
public class Massiv {
    public static void main(String[] args) {
        int[] array = new int[]{8,5,9,3,4,5};
        int[] array2 =new int[array.length];
        System.arraycopy(array, 0, array2, 0, array.length);
        array2[2] = 7;
        for(int i = 0; i < array.length; i++){
            System.out.print(array[i] + " -| ");
            System.out.print(array2[i]);
            System.out.println();
        }

    }
}