java的finally简单理解

时间:2023-03-10 03:47:08
java的finally简单理解

1. 大家都知道,

普通的try, catch, finally格式:

 try{
//有可能会抛出异常的代码
}catch{
//抛出异常时处理的代码
}finally{
//无条件执行的代码,就不管是否抛出异常都会执行
}

2. 加入是这样呢,程序try catch部分中有return呢

 try{
//有可能会抛出异常的代码
}catch{
//抛出异常时处理的代码
return;//这里有return,finally还会执行吗
}finally{
//无条件执行的代码,就不管是否抛出异常都会执行
}

结果是,finally还是会继续执行

3. 难道finally就真的是无条件,在任何情况下都会执行吗

 try{
//有可能会抛出异常的代码
}catch{
//抛出异常时处理的代码
System.exit(0);//return搞不定,但exit(0)是退出整个程序,这样finally也不会执行了
}finally{
//无条件执行的代码,就不管是否抛出异常都会执行
}