В Java определение массива выделяет пространство для ссылок или для самих объектов? - PullRequest
4 голосов
/ 09 июня 2011

В следующей строке кода компилятор выделяет память для хранения 10 объектов MyClass или 10 ссылок?

MyClass[] arr= new MyClass[10];

Другими словами, массивы хранят только ссылки или сами объекты?

Кроме того, отличается ли поведение для примитивных типов?

Ответы [ 2 ]

5 голосов
/ 09 июня 2011

При создании таким образом массивы автоматически инициализируются со значением по умолчанию их типа, поэтому arr инициализируется с 10 null ссылками.

5 голосов
/ 09 июня 2011

Распределяет место для ссылок.В случае примитивных типов выделяется пробел = длина массива * размер байта примитивного типа.

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