码迷,mamicode.com
首页 > 编程语言 > 详细

数组在内存中的解释

时间:2015-01-20 00:44:42      阅读:366      评论:0      收藏:0      [点我收藏+]

标签:

 1 public class Array_Memory {
 2     public static void main(String[] args) {
 3         int[] a = {3,4,66,5};//定义了一个数组
 4 
 5         int[] b = a;//将a这个数组的地址值赋给了b,a和b就好像公用了以台电脑
 6         b[2] = 77;//b把一角标的值该为77;
 7         a = null;//a不再指向该数组,但是b还在指向该数组,就好像a不用这台电脑了但b还再用,所以内存中没有垃圾,因为数组还有人在使用。
 8         System.out.println(b[2]);//b仍然可以用该数组.
 9     }
10 }

局部代码块,用于限定局部变量的生命周期

{
    int age = 7;
}
//System.out.println(age);//不能再访问age了,因为age已经释放了

 

内存的划分:

1.寄存器

2.本地方法区

3.方法区

4.栈内存  存储的都是局部变量,而且变量所属的作用域一旦结束,该变量就自动释放

5.堆内存  存储的是数组,对象(其实数组就是一个对象),用new创建的都存储在堆内存中

    特点:每个实体都有首地址值        堆内存中的每个变量都有默认初始化值

数组在内存中的解释

标签:

原文地址:http://www.cnblogs.com/LO-ME/p/3547958.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!