异常类
- Throwable:异常的基类, Java中Throwable类型的实例才能被throw&catch;
- Error: extend Throwable, 是指在正常情况下,不大可能出现的情况,绝大部分的Error都会导致程序(如JVM)处于非正常,不可维护状态;
- Exception: extend Throwable, 是系统正在执行中,可以预料到的意外情况;可能并且应该被捕获,并进行处理;
- Exception分别可检查(checked)和不可检查(unchecked)异常;可检查的异常(checked)必须显式的进行处理,是编译期检查的一部分;
- unchecked异常: 运行时异常,如NPE、ArrayIndexOutofBoundsException,根据需要判断是否需要捕获;
捕获异常后如何进行处理
如果实在不知道如何进行处理,可以保留原有的异常的cause信息,直接再抛出去或构建新的异常抛出去;