我学习了java 7功能try with resources
。
在catch块中,我应该处理来自try
(通常)和finally
这是否意味着最终在catch之前被调用?如果我想在catch中处理Closeable资源怎么办?
有一个观察结果证实了我的假设。
如果尝试阻止抛出exception1并且close资源方法抛出exception2,那么exception1将被捕获,而exception2将被压制。
答案 0 :(得分:4)
如果我想在catch中处理Closeable资源怎么办?
try
部分中声明的资源的范围仅限于try
正文。如果您需要在catch
中访问它们,请使用常规try-catch
语句。
finally
块将始终执行最后一次。