java中三种初始化和内存分析
内存分析
内存分析图
**第一步:**当我们声明数组时,首先会在栈中存放一个指定数组名的数据。
第二步:当我们用new创建数组或对象时,在堆中就会自动分配一片区域。第一步创建的栈中的数据指针会指向这片区域。
第一步和第二步可以用一个语句完成:int[] array=new int[10];
**第三步:**区域创建成功后就可以向指定范围内向区域中加数据
初始化
**静态初始化:**静态初始化就是在定义时就赋值,但是这样创建后在堆中的区域就分配完了,就不能往这个数组中加数据了。
**动态初始化:**在定义时分配空间,空间内所有的值都是默认值,后期可以覆盖空间中的默认值。