1 空指针异常
     

 

空指针异常发生在对象为空,但是引用这个对象的方法。

代码如下:

public class Demo23 {

 

   

    public static void main(String[] args) {

       String   s   =   null;   //对象s为空(null)

       int   length   =     s.length();//发生空指针异常

       System.out.println(length);

    }

 

}运行结果如下,发生空指针异常

 

正确代码如下:

public class Demo23 {

 

   

    public static void main(String[] args) {

       String   s   =   "HelloWorld";   //对象s不为空

       int   length   =     s.length();

       System.out.println(length);

    }

 

}运行结果如下:




2 数组越界异常
 
     例如你的数据定义了5位,int i[]=new int[6]a[6],所以6这个值是越界的,i[0]i[5]是正常范围内的,只是在运行i[6]时发生了越界现象。
     

先看如下代码:
publicclass Demo03 {

   

    public static void main(String[] args) {

       int i[]={1,2,3,4,};

       for(int x=0;x<6;x++)

       {

           System.out.print(i[x]+"\t");

       }

    }

}

 

运行时会出现如下错误:


  

  正确代码如下:
  

public class Demo03 {

 

   

    public static void main(String[] args) {

       int i[]={1,2,3,4,};

       for(int x=0;x<i.length;x++)

       {

           System.out.print(i[x]+"\t");

       }

    }

 

}

运行结果: