小编Elv*_*win的帖子

如果在finally块中抛出异常,最终是否完全执行

所以我在这里有一些代码,我不确定如果reader.close()方法抛出异常,它会如何反应.

public void someMethod(String s) throws IOException{
   BufferedReader reader = Files.newBufferedReader(filePath,cs);
   listRWLock.readLock().lock();
   try{
     //miscellaneous code involving reading
   }finally{
     reader.close()
     listRWLock.readLock().unlock()
   }
}
Run Code Online (Sandbox Code Playgroud)

ListRWLock是一个ReentrantReadWriteLock.如果reader.close()方法抛出异常,那么它之后的语句是否会无法执行?我已经尝试搜索这个主题了,虽然我已经得到了一些关于在return语句中最终执行的东西,但是我还没有设法找到如果在finally块中抛出异常会发生什么的细节.

提前致谢.

java exception finally bufferedreader

9
推荐指数
1
解决办法
2764
查看次数

标签 统计

bufferedreader ×1

exception ×1

finally ×1

java ×1