multi-catch是java7中引入的一种语言增强特性。这允许我们使用单个catch块来处理多个异常。每个异常用管道符号(|)分隔。
使用multi-catch可以简化异常处理,还可以减少catch块中的代码重复。下面是一个例子:package org.nhooo.example.lang;
import java.io.IOException;
import java.sql.SQLException;
public class MultiCatchDemo {
public static void main(String[] args) {
MultiCatchDemo demo = new MultiCatchDemo();
try {
demo.callA();
demo.callB();
demo.callC();
} catch (IOException | SQLException | ClassNotFoundException e) {
e.printStackTrace();
}
}
private void callA() throws IOException {
throw new IOException("IOException");
}
private void callB() throws SQLException {
throw new SQLException("SQLException");
}
private void callC() throws ClassNotFoundException {
throw new ClassNotFoundException("ClassNotFoundException");
}
}