代码执行出异常,由对应的Exception捕获
try{
//代码...
} catch(XxxException e){
//代码...
} catch(AaaException e){
//代码...
}
有finally{ }
- finally{ }一定会执行,无论是否try. . .catch
- finally{ }之前有return,会先执行return语句,并保存下来,再执行finally{ },最后return
- finally{ }前有return、finally{ }中也有return,会先执行前面的return,保存下载,再执行finally{ }的return,覆盖之前的结果,并返回
//finally之前有return
try{
return ...; //执行得到结果保存
}catch(Exception e){
...;
}finally{
...;
//finally结束后返回结果
}
//try中有return,finally中有return
try{
return ...; //执行得到结果保存
}catch(Exception e){
...;
}finally{
return ...; //执行结果会覆盖try的结果,并返回结果
}