1、 try catch finally使用方法
try {
something();
return success;
}
catch (Exception e) {
return failure;
}
finally {
System.out.println("i don't know if this will get printed out.");
}
2、finally代码块调用执行情况
finally将在执行try或catch代码块后调用
下面情况不会执行finally代码块:
1)如果调用System.exit();
2)如果JVM首先崩溃;
3)如果JVM在try或catch块中到达无限循环(或其他一些不可中断的,非终止语句);
4)如果操作系统强行终止JVM进程; 例如UNIX上的“kill -9
”。
5)如果主机系统死亡; 例如电源故障,硬件错误,操作系统宕机等。
6)如果finally块将由守护线程执行,并且所有其他非守护线程在最终被调用之前退出。