Throwable类
- Throwable常用的方法
- toSting() 返回的是用于描述该类异常情况的类的完整类名。
- getMessage() 返回创建Throwable对象的时候传入的消息字符串的
- printStackTrace()打印异常的栈信息
Error(错误)
错误一般都是由于jvm或者是硬件引发的问题,所以一般不会通过修改代码去处理
Exception(异常)
如果程序出现了异常,那么一般就需要通过代码去处理
- 异常处理方法:
- 捕获:
try{
可能出现异常的代码;
}catch(Exception e){
异常处理代码;
}
- 抛出((throw 、 throws))
注意:
1.如果一个方法内部抛出一个编译时异常对象,那么必须在方法声明抛出
2.如果调用了一个声明抛出编译时异常类型的方法,那么调用着必须要进行处理,否则编译报错
3.一个方法如果遇到throw关键字,该会立马停止执行
4.在一种情况下只能抛出一种异常
throw与throws的区别
- throw关键字是用于在一个方法内部抛出异常对象,throws是用于在方法上声明抛出异常类型的
- throw关键字后面跟的是一个异常的对象,throws后面跟的是异常的类型。
- throw关键字一次只能抛出一个异常对象,throws一次可以声明抛出多种异常类型。
注意: 如果需要通知调用者出了异常,那么则需要使用抛出处理。如果与用户直接打交道的代码就使用捕获处理,千万不能抛出,一旦抛出就抛给了用户。
自定义异常类
- 自定义一个类继承Exception即可
finally块
使用前提:必须要配合try块使用,不能单独使用
- finally块的代码在任何情况下都能执行,只有在jvm退出后就不能执行
- 资源释放必须写在finally块中