01 三种初始化及内存分析
- 内存分析
- 堆是用来存放new的对象和数组;可以被所有线程共享,不会存放别的对象引用
- 栈是用来存放基本变量类型(包含具体数值);或者存放引用对象变量
- 方法区包括了所有的class和static变量
-
三种初始化
- 静态初始化
int[] arrays = {1,2,3,4,5,6,7}; Man[] man = {new Man(),new Man()};//在此之前先创建个Man类,进行引用
- 动态初始化
int[] a = new int[2]; a[0] = 1; a[1] = 2;
- 默认初始化:数组分配空间后,int类型默认为0
02 下标越界
-
数组的四个基本特点
- 其长度是确定的,数组一旦被创建,它的大小就是不可以改变的。
- 其元素必须是相同类型的。
- 数组中的元素可以是任何数据类型,包括基本类型和引用类型。
- 数组对象本身是在堆中的,数组元素相当于对象的成员变量。
-
下标的合法区间:[0,length-1]
当于对象的成员变量。 -
下标的合法区间:[0,length-1]