什么情况下不执行finally

正常情况

除非在try或catch块中调用了退出vm的方法(即system.exit(1)),否则,finally总会被执行

执行顺序:

try--catch--finally--try的return或throw-catch的return或throw--结束

如果finally有return或throw,则不执行try和catch的return或throw

try--catch--finally的return或throw--结束


不执行finally情况

1 后台线程(deamon)结束

2 try或catch退出了vm

你可能感兴趣的:(什么情况下不执行finally)