黑马程序员技术交流社区

标题: try catch finally有几种结合方式? [打印本页]

作者: saury    时间: 2016-1-8 23:36
标题: try catch finally有几种结合方式?
try  catch  finally有几种结合方式?
作者: 胆小的狙击手    时间: 2016-1-8 23:57
自己总结的,可能不全,还望见谅
一、try...catch
try{
} catch(Exception e) {
}
最常见的组合,通常用于处理编译时异常
二、try...catch...catch
try{
}catch(AException e){
}catch(BException e){
}
用于同时捕获多种可能产生的异常,需要注意的是,AException 不能比BException 大,否则会报编译异常,catch(BException e){}的代码永远无法被执行
三、try...finally
try{
} finally {
}
用得不是很多的组合,只有try没有catch,一般不会这么用
四、try....multycatch
try{
}catch(AException | BException e){
}
也是同时捕获多种可能产生的异常,但是和上面的不同,这里的AException和BException必须是完全没有关系的两种异常,不能存在子父类关系。
五、try...catch...finally
try{
}catch(Exception e){
}finally{
}
这种组合主要会出现在IO/SQL的代码中,try中做资源访问操作,finally中释放资源
作者: 15000183754    时间: 2016-1-9 20:46
楼上正解!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2