サンプル
public class
ClassA {
private
InputStreamReader reader;
public void
makeReader (InputStream is) {
reader =
new
InputStreamReader(is);
//何らかの処理...
}
}
ソリューション
リソース・リークを回避するには、すべての java.io.InputStreamReader で close() が呼び出されるようにします。 注: この規則は、あらゆる形式の InputStreamReader コンストラクターに適用されます。
public class
ClassA {
private
InputStreamReader reader;
public void
makeReader (InputStream is) {
reader =
new
InputStreamReader(is);
//何らかの処理...
try
{
reader.close();
}
catch
(IOException ioe) {
//例外処理の実行
}
}
}