本教程操作环境:windows7系统、java10版,DELL G3电脑。
1.概念
数组是一种引用内存,数组引用变量只是一个引用,数组元素和数组变量在内存里是分开存放的。
实际的数组对象(即数组元素)被存放在堆内存(heap)中,数组的引用变量(即数组对象)被存储在栈内存中。
2.分配区域
我们知道,JVM 运行时数据区包括JVM栈,堆内存,以及其他区域。
栈:存放的是局部变量
堆:存放的是所有new出来的东西
方法区: (面向对象部分详细讲解)
本地方法区:(和系统相关)
寄存器:(CPU使用)
3.实例
public static void main(String[] args) { //定义并静态初始化数组 int [] array1={1,2,3}; //定义并动态初始化数组 int []array2=new int[4]; //输出array2的长度 System.out.println("array2的长度:"+array2.length); //循环输出array1数组的元素 for(int i=0;i<array1.length;i++){ System.out.println(array1[i]); } System.out.println("---------------------------------"); //循环输出array2的数组元素 for(int i=0;i<array2.length;i++){ System.out.println(array2[i]); } array2=array1; //再次输出array2的长度 System.out.println("array2的长度"+array2.length); }
以上就是java数组内存的探究,相信大家对于这种不同的存储方式还是非常感兴趣的。学会后可以去对应的地方找寻数组的存储,加深本篇学习的理解。更多Java学习指路:java数组