异常
java.lang.Exception 异常
java.lang.Error 错误
异常:导致程序的正常流程被中断的事件,叫做异常
1.捕获异常
try{
//可能产生异常的代码
}catch(Exception e){
//异常的处理
//e.printStackTrace();
}finally{
//一定会执行的代码,如关闭资源
}
可以使用可能产生异常的父类进行catch
多个异常可以进行多个catch{}, jdk1.7后可以catch(Exception1|Exception2 e){}
2.抛出异常。谁调用,谁处理
method1 throws了一个异常,哪个方法调用method1就处理,也可以继续向上抛出。
3.throws与throw区别:
1)throws 出现在方法声明上,而throw通常都出现在方法体内。
2)throws 表示出现异常的一种可能性,并不一定会发生这些异常;throw则是抛出了异常,执行throw则一定抛出了某个异常对象。
4.异常分类:检查性异常,运行时异常,错误
(1)检查性异常(CheckedException)
必须进行处理的异常,要么try catch住,要么往外抛,谁调用,谁处理
如:FileNotFoundException,ParseException
(2)运行时异常(RunningException)
即便不进行try catch,也不会有编译错误
如:AirthmeticException, ArrayIndexOutOfBoundsException, NullPointerException
(3)错误(Error)
指的是系统级别的异常,通常是内存用光了
如:OutOfMemoryError
5.自定义异常
继承Exception