February 23, 20251. 异常概述
#
异常是程序执行过程中出现的意外事件,会中断程序的正常流程。Java使用异常处理机制来处理运行时错误,使得程序更加健壮。
2. 异常层次结构
#
Java的所有异常都是java.lang.Throwable类的子类,主要分为两大类:
- Error:表示严重的问题,通常是不可恢复的系统级错误。
- Exception:表示可以被程序处理的异常情况。
Throwable
/ \
Error Exception
\
RuntimeException
3. 检查型异常vs非检查型异常
#
3.1 检查型异常(Checked Exceptions)
#
- 除了
RuntimeException及其子类之外的所有异常。 - 必须在代码中显式处理或声明抛出。
- 例如:
IOException, SQLException
3.2 非检查型异常(Unchecked Exceptions)
#
RuntimeException及其子类。- 不需要在代码中显式处理。
- 例如:
NullPointerException, ArrayIndexOutOfBoundsException
4. 异常处理
#
4.1 try-catch 块
#
1
2
3
4
5
6
7
8
9
| try {
// 可能抛出异常的代码
} catch (ExceptionType1 e1) {
// 处理 ExceptionType1
} catch (ExceptionType2 e2) {
// 处理 ExceptionType2
} finally {
// 无论是否发生异常都会执行的代码
}
|
4.2 多重捕获
#
Java 7引入的特性,允许在一个catch块中捕获多个异常:
...