我有一个用例,我InputStream
在一个类中创建一个并将其传递给另一个类。如果我删除了finally
我关闭流的块,它不会在 findbugs 中被检测到。这是为什么?
Class A {
public static void methodA(InputStream is) {
// Do something.
// The stream is NOT closed.
}
}
Class B {
public void methodB(Sting filePath) {
FileInputStream fis = new FileInputStream(new File(filePath));
A.methodA(fis);
}
}
理想情况下,findbugs 应该在这个用例中检测到流没有关闭。但是,它没有,我很想知道为什么!