首页 > 系统相关 >java 数组的内存分配

java 数组的内存分配

时间:2023-01-02 18:44:10浏览次数:41  
标签:初始化 java int 内存 数组 变量名

每一个软件都占用一定的内存空间。

栈与堆

java 内存分配

int变量例子

int等类型的变量无new关键字,不在堆中开辟空间,值直接在栈中赋给变量名。

数组的内存

数组的初始化则涉及到在堆内存中开辟新的空间(静态初始化的简写,eg:int[] array = {1,2,3},是省略了new int[]的,因此静态初始化也涉及开辟新的空间)。因此实际传递给变量名的实际上是在堆内存中的地址,而非是直接的数值。

在堆中新建的不同的数组互相独立。

但实际上,也存在两个数组指向同一个空间的内存图。

没有通过索引赋值,而是直接将arr1中记录的地址传递给了arr2,那么两个array指向的就是同一个堆中的空间。此时其中一个数组对内存中的值做了更新,那么通过另一个变量名进行访问的时候,得到的也是更新了的值。

标签:初始化,java,int,内存,数组,变量名
From: https://www.cnblogs.com/xiaoaozi/p/17020339.html

相关文章