Вы можете думать об этом, как всегда, работая в куче.
Я считаю, что некоторые умные виртуальные машины могут размещать объекты в стеке, если они могут обнаружить, что это безопасно - но концептуально это включенокучаВ частности, все типы массивов являются ссылочными типами (даже если тип элемента является примитивным), поэтому переменная array
(которая находится в стеке) является просто ссылкой на объект, и объекты обычно идут в кучу.
В частности, представьте небольшое изменение:
byte[] someMethod() {
byte[] array = { 0, 0 };
return array;
}
Если бы массив был размещен в стеке, на что должна ссылаться возвращаемая ссылка?