try
{
code1;--->可能发生异常Exception1,Exception2,Exception3
return;
}
catch (Exception1 e)
{
catchcode1;
}catch (Exception2 e)
{
catchcode2;
return;
}finally{
finallycode;
}
overcode;
正常情况的执行顺序是code1,finallycode;
异常1:code1,catchcode1,finallycode,overcode;
异常2:code1,catchcode2,finallycode;
异常3:code1,finallycode,虚拟机处理。
总结:在程序运行过程中,只要return后就只执行finallycode
发生异常后,异常被捕获处理后,从finally{}依次往下执行。
|