Eclipse 在声明“out”时向我发出警告。这是误报吗?
Random r = new Random();
try(PrintWriter out1 = new PrintWriter("one.txt");
PrintWriter out2 = new PrintWriter("two.txt"))
{
PrintWriter out = r.nextBoolean()?out1:out2;
out.println("x");
}
P.S.:警告是“资源泄漏:‘out’永远不会关闭”。
最佳答案
这是误报。所有实例均已正确关闭。
我很久以前就关闭了 Eclipse 中那些与资源相关的警告。它们真的不可靠,因为有太多“明显”正确的控制流路径,如果不实际执行它们就无法被 Eclipse 识别为“正确”……任何重要的代码都注定会有这些误报。
关于java - 这是资源泄漏还是误报?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16986131/