如何在异常处理中使用try-catch块

时间:2015-05-16 17:39:54

标签: java

当我们使用try-catch块时,我们可以使用多个catch块和一个try块吗?当try块存在时,是否必须有catch块?

2 个答案:

答案 0 :(得分:0)

由于可以从单个try块抛出不同类型的异常,因此一个try块显然可以使用多个catch块来捕获这些异常。 使用catch块或最后阻止是必须的。如果它们都没有,那么它将是编译错误。因此,如果存在try块并且没有finally块,则必须使用catch块。

答案 1 :(得分:0)

有两种可能的方法(例如):

try {
  // some code to access to a db

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

从Java 7开始,可以使用这种方式:

try {
  // some code to access to a db

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