如果执行没有引发异常,那么控制流程将进入 finally 代码块。那么,try 代码块中的 return 语句是否被 JVM 忽略了呢?即使出现异常,控制也会进入 catch 代码块,然后忽略返回语句,转而进入 finally 代码块并从其中返回。
public class Helper {
public int showException(int a, int b){
try{
int c=a/b;
return c;
} catch(Exception e){
return 0;
} finally{
return 3;
}
}
}