Java 7 捕获多个异常

2024 年 8 月 29 日 | 阅读 2 分钟

Java 允许你在一个 catch 块中捕获多种类型的异常。它是在 Java 7 中引入的,有助于优化代码。

你可以使用竖线 (|) 来分隔 catch 块中的多个异常。

在 Java 7 之前处理多个异常的旧方法。

捕获多个异常类型 示例 1

输出

/ by zero

捕获多个异常类型 示例 2

Java 7 为我们提供的功能

输出

/ by zero

捕获多个异常类型 示例 3

输出

Compile-time error: The exception ArithmeticException is already caught by the alternative Exception

因此,在这里,如果捕获多个异常,请遵循从泛化到更专门化的规则。 这意味着,如果您使用超类(通用类),请不要使用子类(专门类)。

注意 - 处理多个异常类型的 Catch 块使 catch 参数隐式地成为 final。 在上面的示例中,catch 参数“e”是 final,因此您无法为其分配任何值。