连接上篇java探索之堆栈区分,启下对擦除的内在探索,可以了解掌握数组出错的两种方式
package com.dreamly.day01; /** * @author dreamly * */ public class ArrayTest01 { public static void main(String[] args) { int[] x=new int[3]; x=null;//擦除掉与实例对象的联系,即不保存地址值。 System.out.println(x[0]); //NullPointerException:空指针异常,当引用没有任何指向值为null的情况,该引用还在用于操作实体 /** * Exception in thread "main" java.lang.NullPointerException at com.dreamly.day01.ArrayTest01.main(ArrayTest01.java:11) */ int[] arr=new int[3]; System.out.println(arr[3]); //ArrayIndexOutOfBoundsException:操作数组时,访问到了数组中不存在的角标00000 /* * Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3 at com.dreamly.day01.ArrayTest01.main(ArrayTest01.java:19) */ } }