异常
一、异常概述¶
异常:程序出错了
1、异常的分类¶
- 编译时异常:受检异常
- 运行时异常:非受检异常
2、异常体系:Throwable¶
- Error:严重问题,不需要处理
- Exception:异常类,程序本身可以处理
- RuntimeException:编译器不检查,犯错后再改
- 非RuntimeException:编译期需要修改,不改过不了编译
3、JVM的默认处理方法¶
- 把异常信息(名称,原因,位置)输出在控制台
- 程序停止运行
二、异常处理¶
1、try...catch...finally...¶
执行完毕后,程序还能继续运行
无论如何,都会执行finally里的操作
2、throws¶
延迟处理异常:把异常抛出去,用的时候再处理 --> 甩锅
三、Throwable的成员方法¶
1. getMessage()¶
返回throwable的详细信息字符串(最简短)
2. toString()¶
返回可抛出的简短描述
3. printStackTrace()¶
把错误信息输出在控制台(最完全)
四、自定义异常¶
throw:手动抛出自定义异常对象