异常是指java程序运行期出现的错误,可以生成一个异常类对象,该类封装了异常信息。并交给Java运行时系统。
用catch可以捕捉异常,做出相应处理。
int[] end = {1,2,3};
try{
System.out.println(end[3]);
} catch(ArrayIndexOutOfBoundsException ae){
System.out.println("数组越界,请与管理员联系!");
//ae.printStackTrace();
}
异常的分类:
1、所有异常类都来自于Throwable,异常类的根类。
2、Error 处理不了的错误。
3、Exception 异常,可以处理的。
4、Exception中,一种是必须处理的。另外一种为RuntimeException,可以不处理。
5、finally try中发生异常,执行对应catch中的程序块,然后会执行finally程序块。
finally一般用来做资源清除工作。
6、throws 异常如果不能处理 抛出。用关键字throws。则不再需要try catch 。
public static void f() throws FileNotFoundException{
FileInputStream in = new FileInputStream("end.txt");
//System.out.println("i am f() !");
}
但是异常被抛出后,在方法被调用的时候,必须对异常进行处理或者继续抛出。如果main方法不进行处理,则交给运行时处理。
try{
f();
} catch(IOException ex){
System.out.println("IO exception , please call the master !");
}
7、异常先捕捉小的,再捕捉大的。
-------------------------------------------------------------------
end、