-
简介
运行期间的错误,而不是编译时的语法错误
-
异常类的继承关系
Throwable(异常的根类)
- Exception(普通异常)
- Error:程序错误,指代的是底层,低级的,不可恢复的严重错误
异常的分类:
- 检查性异常:系统运行时可能会产生该类异常,我们必须写出相应的处理代码,否则程序无法继续运行。
- 非检查性异常:系统运行时可能产生该类异常,则没有必要在程序中声明对该类异常的处理,程序是可以编译运行的,如RuntimeException, ArrayIndexOutofBoundException,IOException
-
异常的处理机制
处理异常的量的两种方式:
-
自行处理异常:可能引发异常的语句封装在try{}块中,处理异常的语句封装在catch中
格式:
try{
可能引发异常语句
}catch( 异常信息的封装类 对象名称){
想要显示的异常提示信息
}
-
回避异常:在方法生命中通过throw字句,通知调用者,如果你要使用,就必须自行解决异常。方法上写出Throws 异常名称
-
注意事项:
- catch块,用来捕获try所抛出的异常,没有try块,catch不能单独存在,在有try的情况下,可以有多个catch,用来捕获不同类型的异常。
- 指定异常的信息类,在捕获时出现在首位
- try{}这个地方不许有任何代码catch(){}
-
finally关键字
- 放在try{}catch{}语句后面
- finally所包装的语句,不管异常是否捕获成功,总是要执行
- 通畅finally当中的语句进行资源的清楚操作
- 对应finally当中语句进行资源的清除操作。
-
throws关键字
-
·简述:如果一个方法的语句在执行时可能产生某种异常,但是并不能确定如何处理,这时候可以使用throws来抛出异常
-
格式:
方法名(参数) 的后面
-
throws关键字,后面可以有多个异常,用逗号分开
-
throws抛出的异常,由调用该函数的(方法)来处理
-
-
throw关键字
- 简述:异常可以通过关键字throw抛出,程序可以通过throw引发明确的异常
- Throw用在方法内,表示抛出异常由方法体内进行处理,不能单独是使用,要么和try,catch一起,要么和throws一起
- throw语句操作一定是throwable类,或者throwable的子类类型的语句
-



