异常
什么是异常
- 概念:程序在运行过程中的不正常现象。出现异常不处理将终止程序运行
- 异常处理的必要性:任何程序都可能存在大量的未知问题、错误;如果不对这些问题进行正确处理,则可能导致程序的中断,造成不必要的损失
- 异常处理:Java编程语言使用异常处理机制为程序员提供了异常处理的能力
异常的传递
- 按照方法的调用链反向传递,如始终没有处理异常,最终会由JVM进行默认异常处理(打印堆栈跟踪信息)
try…catch
三种情况:
- 正常请求
- 出现异常并处理
- 异常类型不匹配
异常处理 多重catch
- 子类异常在前,父类异常在后
- 发生异常时按顺序逐个匹配
- 只执行第一个与异常类型匹配的catch语句
- finally根据需要可写或不写
声明异常
- 如果在一个方法中抛出了异常,如何通知调用者?
- throws关键字:声明异常
- 使用原则:底层代码向上声明或者抛出异常。
主动抛出异常
可在方法中用throw new Exception();主动抛出异常,也可限制输入格式等。
方法重写中的异常,子类不能比父类的异常更宽
抛出异常,也可限制输入格式等。
方法重写中的异常,子类不能比父类的异常更宽