- 所有的异常都是继承自Throwable,它是所有异常的共同祖先
- Throwable有两个子类,Error和Exception
- Error表示错误,这种错误会导致程序奔溃,无法处理。程序中应该不允许出现Error
- Exception表示程序本身可以处理的异常。它分为两类,可检查异常和不可检查异常
- 可检查异常,它的发生是可以预测的,应该在编码的时候考虑到
- 未检查异常,也就是运行时异常,RuntimeException及其子类都是未检查异常
1. 常见的运行时异常
- ClassCastException:类装换异常
- IndexOutOfBoundsException:数组越界
- NullPointerException:空指针异常
- BufferOverflowException
2. 常见的受检查异常
- IOException
- FileNotFoundException
- SQLException