1

我知道这可能是这个问题的重复。但是该问题的答案包括早期 Java 版本不支持的|内部。catch (..|..)不过,我一定会使用旧版本。我对任何类型的异常都有相同的反应。所以,我想把我的catch陈述合二为一,如下所示:

try {...}
catch(Excetion1 e1 OR Exception2 e2 OR etc)
{
...
}

我尝试使用哈希|而不是OR,但没有结果。是否有针对旧 Java 版本的解决方法?

4

3 回答 3

5

引用文档

在 Java SE 7 及更高版本中,单个 catch 块可以处理多种类型的异常

catch (IOException|SQLException ex) {
    logger.log(ex);
    throw ex;
}

如果它不适合您,请确保您使用的是 Java 7 JRE。

于 2013-05-31T20:31:36.647 回答
2

在 Java 6 中:没有

在 Java 7 中,是的:

catch( Exception1 | Exception2 e )
于 2013-05-31T20:32:02.167 回答
1

如果您对所有异常都有相同的响应,那么您可以简单地使用

try {...}
catch(Exception ex)
{
...
}
于 2013-05-31T20:32:15.143 回答