非リテラルのサイズを持つ配列を作成するときにどのようにJVMがmemroiesを割り当てません

L.Maple:

C / C ++では、すなわちを作成するときに、配列サイズのリテラル数をspecifiyする絶対必要ですint arr[10];しかし、Javaで、私たちは、このフォームで配列を作成することができますint size = 10; int[] arr = new int[size];そして、コンパイラは、実際に可変サイズが何であるかを把握しません。次に、どのようにJVM memeoriesに配列ニーズを割り当てていますか?

ヘンリー:

Javaは、ヒープ上のアレイのメモリを割り当てます。変数は、arr配列への参照だけではなく、配列そのものです。これは、とC / C ++で配列を割り当てると同じですmallocか、new

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=201453&siteId=1