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");
}
}
}
运行结果: