Java异常
异常处理
Java的异常
错误来自源码,我们先看错误的总类有哪一些。这个是Java中,错误处理类的继承机制。
在图中,我们能够明显看出来。Java的错误有两类,Error和Exception。
Error说明的程序一般对此无力解决,像内存耗尽,栈溢出,等等。
Exception则是运行时的错误,可以被捕获并处理,像数值类型异常,空指针错误 ,数组下标越界等等。
Exception又分为两大类:
- RuntimeException以及它的子类;
- 非RuntimeException(包括IOException、ReflectiveOperationException等等)
Java规定:
- 必须捕获的异常,包括Exception及其子类,但不包括RuntimeException及其子类,这种类型的异常称为Checked Exception。
- 不需要捕获的异常,包括Error及其子类,RuntimeException及其子类。
捕获异常
捕获异常使用try...catch语句,把可能发生异常的代码放到try {...}中,然后使用catch捕获对应的Exception及其子类