oop finally block的确切用途是什么?无论如何,在Java7中有自动资源管理功能 1 月 Questions & Answers 57 此外,我们不用在finally块中编写代码,只需在catch块中捕获异常,我们需要清理的任何资源都可以在try-catch块之后编写。 那么,那最后一块有什么用呢
# 1 楼答案 也可以使用finally块而不使用catch public void doSomething() throws ActionException { FileAction action = null; try { action = new FileAction(); someCode(); } finally { if ( action != null ) action.close(); } } 因此无论是否引发异常,finally都将始终执行
# 1 楼答案
也可以使用
finally
块而不使用catch
因此无论是否引发异常,
finally
都将始终执行# 2 楼答案
只有当您打算处理异常时,才应该捕获异常,在某些情况下,您可能不想这样做(例如,如果您希望在代码中的其他地方处理异常)
此外,自动资源管理并不能保证没有特定于应用程序的额外清理需要进行