数组与内存控制
2014-11-13 21:58
134 查看
注:我已对本文章进行了更新,劳烦移步。
java语言是典型的静态语言,因而,数组也是静态的,即当该数组被初始化之后,该数组的长度是不可变的。java 语言的数组变量是引用类型,什么意思呢?意思就是,数组变量并不是数组本身,它只是指堆向内存中的数组对象。如:
这3个变量以及各自引用的数组在内存中的分配如图:
对数组变量来说,它并不需要进行所谓的初始化,只是让数组变量指向一个有效的数组对象即可。
对Java程序来说,所有的引用类型的变量都不需要经过所谓的初始化,需要进行初始化的只是该引用变量所引用的对象。
所有的局部变量都是存放在栈内存中,不管其是引用类型的变量还是基本类型的变量,都是存储在各自的方法栈区中;但引用类型变量所引用的对象(包括数组、普通的Java对象)则总是存储在堆内存中。
对于Java,堆内存中的对象(不管是数组还是普通Java对象)通常不允许直接访问,为了访问堆内存中的对象,通常只能通过引用变量。
数组变量都是存储在栈内存中的,但数组元素则作为数组对象的一部分被保存在堆内存中,无论它们是基本类型的数组元素还是引用类型的数组元素。
相关文章推荐
- JAVA--数组及其内存控制
- java数组与内存控制
- 数组与内存控制
- java之数组与内存控制
- Java数组与内存控制
- 数组和内存控制
- 尚硅谷第四课0722班 java-特殊流程控制 -数组元素的默认初始化-数组操作常见问题-Java内存的结构
- Java学习系列(三)Java运算符、控制语句、数组及其在内存中的运行分析
- Java学习系列(三)Java运算符、控制语句、数组及其在内存中的运行分析
- Java学习系列(三)Java运算符、控制语句、数组及其在内存中的运行分析
- 1. Java数组与内存控制
- Java数组与内存控制
- Java基础复习笔记 数组,内存形式,父子,内存控制01
- (一)Java数组与内存控制
- 疯狂java之数组与内存控制
- 数组与内存控制
- Java数组与内存控制(转)
- 疯狂java之数组与内存控制
- 数组与内存控制笔记
- 数组与内存内存控制