在创建非文字大小的数组时,jvm如何分配memroies

L.M*_*ple 3 java jvm

在c/c ++中,必须在创建时指定数组大小的字面数,即int arr[10];.但是在java中,我们可以用这种形式创建一个数组int size = 10; int[] arr = new int[size];.并且编译器不会弄清楚变量大小究竟是什么.那么jvm如何分配数组所需的内存?

Hen*_*nry 6

Java在堆上分配数组内存.变量arr只是对数组的引用,而不是数组本身.这与使用malloc或在c/c ++中分配数组相同new.