public void extISImReturnNoWarning() {
InputStream is = null;
try {
is = new FileInputStream("A");
is.available();
} catch (IOException e) {
}
}
public void locISImReturnHasWarning() {
try {
InputStream is = new FileInputStream("A");
is.available();
} catch (IOException e) {
}
}
public void extISExReturnHasWarning() {
InputStream is = null;
try {
is = new FileInputStream("A");
is.available();
} catch (IOException e) {
return;
}
}
经过一些研究,我得出的结论是这是一个Eclipse bug。我在Eclipse下载站点(Kepler M3)上找到的最新版本中测试了它,但问题仍然存在。我还在Eclipse项目中发现了5-6个类似问题的bug报告,报告时间为过去30天。在研究过程中,我还发现了另一个奇特的行为:
public void makeConnection() throws SQLException {
Connection connection = null;
try {
connection = DriverManager.getConnection("localhost");
for (int i = 0; i < 1; i++)
if (i < 1)
throw new SQLException("Foo");
connection.commit();
} finally {
close(connection);
}
}
public void close(Connection c) {
}
此代码将生成资源泄漏警告。但是,通过移除其中一个
Eclipse Java警告:资源泄漏:“Unassigned Closeable Value”从不关闭 漏在哪里?
在中,我收到了一个警告,我不明白这一点。 这是理解问题还是java/eclipse问题?
我使用一个用不同长度的不同值填充字节数组。我使用方法。由于此方法继承自,因此可能会引发IOException。在中有一个方法不会引发IOException,因此我扩展了并覆盖方法,该方法现在也不会引发IOException: 对于扩展类,我在eclipse 4.5.1中得到了资源泄漏的警告,因为我没有关闭代码中的流。的情况并非如此。我的扩展类有什么问题,或者我需要添加什么来删除警告?我知道我可以将
大家晚上好。我是一个使用Java编程的完全初学者,我正在学习“扫描仪”,但是当我在Eclipse中键入这个基本代码时,我收到一条消息说“资源泄漏:‘扫描仪’永远不会关闭。 我做错了什么?
我试图理解不对任何流调用close()会如何影响系统的性能和功能。为了做到这一点,我创建了下面的测试类。