在java 7中捕获多个异常

简介:

java 7使得我们能够在同一个catch语句块中捕获多种不同的异常,这也叫做多重异常捕获。

在java7以前,我们可能要这样做:

01 try {
02  
03     // execute code that may throw 1 of the 3 exceptions below.
04  
05 catch(SQLException e) {
06     logger.log(e);
07  
08 catch(IOException e) {
09     logger.log(e);
10  
11 catch(Exception e) {
12     logger.severe(e);
13 }

正如上面看到的,SQLException 和IOException 这两个异常都是以相同的方式来处理的,但是你仍然要为这两个异常写两个独立的catch语句块。

java 7中你可以像下面这样捕获多个异常:

01 try {
02  
03     // execute code that may throw 1 of the 3 exceptions below.
04  
05 catch(<strong>SQLException | IOException e</strong>) {
06     logger.log(e);
07  
08 catch(Exception e) {
09     logger.severe(e);
10 }

注意,第一个catch语句块中的两个异常名字是被管道字符|分割的。两个异常类名之间的管道字符就是在同一个catch语句块中声明多个异常的方法。

相关文章
|
1月前
|
Java
Java中的异常链:从根源到解决方案
Java中的异常链:从根源到解决方案
37 0
|
1月前
|
存储 监控 Java
Java认识异常(超级详细)
Java认识异常(超级详细)
|
3月前
|
Java 程序员 数据库连接
JAVA中的异常
Throwable Error Exception 编译时异常 运行时异常 异常的处理 try-catch捕获并处理 finally throw throws 自定义异常类
28 0
|
1月前
|
Java UED
Java中的异常处理:捕获、声明与抛出
Java中的异常处理:捕获、声明与抛出
57 0
|
2天前
|
存储 Java 程序员
JavaSE&Java的异常
JavaSE&Java的异常
18 0
|
18天前
|
Java
Java中的异常类总结
Java中的异常类总结
|
1月前
|
SQL Java
java中的异常
java中的异常
10 1
|
1月前
|
Java 程序员 编译器
Java中异常
Java中异常
12 0
|
1月前
|
Java 程序员 编译器
Java中的异常
Java中的异常
9 0
|
1月前
|
Java
Java异常的抛出
Java异常的抛出
10 0