1 package com.baidu.java;
2
3 public class TestException {//数组的异常
4 public static void main(String[] args) {
5 //1.数组下标越界异常 java.lang.ArrayIndexOutOfBoundsException
6 //第一种
7 int[] _int=new int[10];
8 _int[0]=100;
9 _int[9]=20;
10 _int[10]=90;//到——int[9]就结束了,所以此处越界
11 //第二种
12 for(int i=0;i<=_int.length;i++){//此处<=越界,<就已经满足长度了
13 System.out.println(_int[i]);
14 }
15 //2.空指针的异常java.lang.NullPointerException
16 //第一种
17 boolean[] bool=new boolean[4];
18 bool=null;//此处触发异常,把栈中的bool赋值为null,没法指向堆中的地址元素
19 System.out.println(bool[3]);
20 //第二种
21 String[] str=new String[3];
22 System.out.println(str[2].toString());
23 //str[2]为null,用null调用方法,触发空指针异常,应该先给str[2]赋值
24 //第三种
25 int[][] myInt=new int[3][];//此处声明了三行null
26 myInt[2][0]=12;//给第三行第一个元素赋值,因为只声明了行数为3,3行的值
27 //都是null,所以null不能再指向第一个元素,应该先赋值本行有几个元素。
28
29 }
30 }