当我们使用try-catch块时,我们可以使用多个catch块和一个try块吗?当try块存在时,是否必须有catch块?
答案 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;
}