Arraylist elementData модификатор доступа Запрос в Java - PullRequest
0 голосов
/ 30 марта 2020

У меня возник вопрос при просмотре elementData Arraylist в Java.

transient Object[] elementData; // non-private to simplify nested class access

Я думаю, что закрытый или модификатор доступа по умолчанию работает так же во вложенном классе. Я сделал MyClass.class и протестировал.

public class MyClass {

    private int a = 10;
    int[] defaultElementData = new int[10];
    private int[] privateElementData = new int[10];

    public nestedClass nestedClass(){
        return new nestedClass();
    }

    private class nestedClass {

        private int[] defaultClone = MyClass.this.defaultElementData;
        private int[] privateClone = MyClass.this.privateElementData;


        public int defaultElementDataChange(int index, int element){
            defaultClone[index] = element;
            return defaultClone[index];
        }

        public int privateElementDataChange(int index, int element){
            privateClone[index] = element;
            return privateClone[index];
        }
    }

}

Может кто-нибудь объяснить, почему они используют default как модификатор доступа elementData?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...