异常

掌握throwable继承体系

Throwable(异常和错误的顶层父类)

|---Error:错误类。表示的是程序在运行过程中出现的错误。错误的发生都属于系统级别。
|---Exception:异常类。程序在运行过程中,出现了异常现象:数组越界、类型转换异常等。

Error:(JVM 是运行操作系统上,JVM 操作内存是需要借助操作系统,如果内在发生错误,会由操作系统反馈给 JVM)
通常在程序中发生错误的原因是因为程序在书写时存在问题,而 JVM 运行有问题的代码就会引
发内存出错。解决错误的方案:修改源代码)


Exception: 通常在程序中如果发生了异常,是有专门针对异常处理的方案(处理方案是由开发人员自己制定)
程序中异常的发生通常是因为程序在操作数据时引发的,解决异常的方案是:声明、捕获(学习以 Exception 为主,开发也主要以 Exception 为主)

异常的分类

运行期异常:RuntimeException

编译期异常:Exception

异常的处理

声明 throws:其实就是程序中遇到异常时,自己不处理,交给其它程序处理

捕获try 、catch、finally:其实就是在程序中遇到异常时,不会交给其它程序处理,自己处理

注意:
1.在使用 throw 抛出异常代码的后面,不能书写任意代码。

2.如果使用 try...catch...finally 结构的,catch中抛出异常后面如果有其他语句,执行时先执行,finally 语句再去执行 catch 中的其他语句

3.try..catch..catch 结构中必须按照子类到父类的顺序写

4.try块后面不一定需要跟着catch块,可以只跟着finally块,catch和finally不能同时忽略

举例常见异常

--整理自传智播客面试宝典