Java数组03:三种初始化及内存分析

Java数组03:三种初始化及内存分析

Java数组03:三种初始化及内存分析

画图分析内存

静态初始化:

int[] a = {1,2,3};
Man[] mans = {new Man(1,1),new Man(2,2)};

动态初始化:

int[] a = new int[2];
a[0]=1;
a[1]=2;

数组的默认初始化:

数组也是引用类型,它的元素相当于类的实例变量,因此数组一经分配空间,其中的每个元素也被按照实例变量同样的方式被隐式初始化。

代码:

package com.pzz.array;

public class Man {
    public static void main(String[] args) {
        //静态初始化: 创建 + 赋值
        int[] a = {1,2,3,4,5,6,7,8};
        Man[] men = {new Man(),new Man()};
        System.out.println(a[0]);

        //动态初始化:包含默认初始化
        int[] b = new int[10];
        b[0] = 10;
        System.out.println(b[0]);
        System.out.println(b[1]);
    }
}

数组下标越界:要输出一个数组空间里不存在的值,会造成数组下标越界(比如数组只有10个空间,要输出下标10的数);

上一篇:[JavaStript学习记录] 对构造函数,原型,实例对象的一些理解


下一篇:Linux Manual