不一定。举例如下: 1、程序在进入try语句之前就已经出现异常,就会直接结束,不会执行finally代码块中的代码。 2、当程序在 try 块中强制退出时,也是不会去执行 finally 块中的代码,比如在 try 块中执行 exit 方法。