【发布时间】:2013-10-17 10:06:56
【问题描述】:
try(PrintWriter f = new PrintWriter(new BufferedWriter(new FileWriter("abc.txt")));)
{}
catch(IOException ex)
{
ex.printStackTrace();
}
以上工作正常。但是当我这样做时
PrintWriter f;
try(f = new PrintWriter(new BufferedWriter(new FileWriter("abc.txt")));)
{}
catch(IOException ex)
{
ex.printStackTrace();
}
它会抛出错误。为什么会这样?我正在测试这个新功能,我认为我会采用第二种方法,在try-catch statement 之后会打印资源PrintWriter f - 如果try-with-resource 语句按预期工作,则它应该为空。为什么不允许第二种方式?
另外我怎么能通过方法1测试它?
【问题讨论】:
-
错误是什么?这可能会有所帮助
标签: java try-with-resources autocloseable