好吧,我一直在做以下事情(变量名已更改):
FileInputStream fis = null;
try
{
fis = new FileInputStream(file);
... process ...
}
catch (IOException e)
{
... handle error ...
}
finally
{
if (fis != null)
fis.close();
}
最近,我开始使用 FindBugs,这表明我没有正确关闭流。我决定看看 finally{} 块是否可以做任何事情,然后我看到,哦,是的,close() 可以抛出 IOException。人们应该在这里做什么?Java 库抛出了太多的检查异常。