我有一个
在我的特殊实现中,我有一个
Map<Key, Closeable>
,如果从地图中删除键,则我想关闭 Closeable
。通常,我的做法是类似于下面的代码:Closeable c = map.remove(key);
c.close();
我的Eclipse警告我“资源'c'应该由try-with-resource管理”,所以最好只写以下内容吗?
try (Closeable c = map.remove(key)) {}
在我的特殊实现中,我有一个
Closeable
的子类,在这个子类中,close()
方法不会抛出IOException
异常,因此不需要进行异常处理。
try
块结束后,它会自动调用c.close()
。 - Viettry-with-resources
语句是很好的,那么你有什么问题? - Yu Jiaaomap.remove(key).close()
来消除c
。 - Kevin Krumwiede