サンプル
public class
ClassA {
private
PrintStream stream;
public void
makeStream (OutputStream os) {
stream =
new
PrintStream(os);
//何らかの処理...
stream.flush();
}
}
ソリューション
リソース・リークを回避するには、すべての java.io.PrintStream で close() が呼び出されるようにします。 注: この規則は、あらゆる形式の PrintStream コンストラクターに適用されます。
public class
ClassA {
private
PrintStream stream;
public void
makeStream (OutputStream os) {
stream =
new
PrintStream(os);
//何らかの処理...
stream.flush();
stream.close();
}
}