0

以下两个选项之间是否存在语义差异?在自动资源管理方面,它们中的任何一个都比另一个更安全吗?

选项1:

 try ( ObjectInputStream in = new ObjectInputStream(new
          FileInputStream("fooFile")) ) {
     ...
    }

选项2:

 try (FileInputStream fin = new FileInputStream("fooFile");
             ObjectInputStream in = new ObjectInputStream(fin)) {
            ...
   }
4

1 回答 1

1

见这里: http: //www.stackoverflow.com/a/21348893/1419315

本质上,存在的论点是,第一个变体在构造失败FileInputStream.close ()时不会被调用。ObjectInputStream

于 2014-07-22T13:59:23.343 回答