- java 异常层次结构图(图片来自网络)
1). Throwable: java异常 顶层类
2). error: java 运行环境错误
3). exception: 程序本身需要处理的异常 - try/catch
1). try: 尝试捕获异常
2). catch: 处理异常
3). 一个 try块后面可以跟多个 catch块,多个catch块 自上而下的排列顺序为 由子类到父类 - finally
1). 无论是否抛出异常,finally 代码块都会被执行
2). 作用: 释放系统资源
3). finally代码块 是在方法返回值返回给调用者之前执行
4). jvm执行具有返回值的方法时,它会先将方法的返回值存储在一块区域里,然后在执行返回语句时,从这块区域中取出值并返回。 - throw: 生成指定的异常 并 抛出
- throws: 申明方法将会抛出异常
1). 重写方法时 throws,注意事项:
1). 子类方法可以 不设异常(不处理异常)
2). 可以抛出父类方法异常的部分异常
3). 可以抛出父类方法异常的子类异常 - java 异常 分为 可检测异常 和 非检测异常
1). 可检测异常: 是在编译器编译时 检测
2). 非检测异常: 是指 派生于 error 或者 runtimeexception 异常的子类 - 自定义异常: 是指继承 Exception 的异常
- 异常处理原则:
1). 谁抛出异常,谁处理异常
2). 当前层抛出的异常尽量当前层捕获处理
3). 尽量在每层中封装每层的异常类,准确定位异常所在位置
Java 异常
最新推荐文章于 2023-05-13 14:34:37 发布