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");
}
}
}
運行結果:
