Example
public class
ClassA {
private
PrintStream stream;
public void
makeStream (OutputStream os) {
stream =
new
PrintStream(os);
//do something...
stream.flush();
}
}
Solution
To avoid resource leaks, ensure that close() is invoked on every java.io.PrintStream. Note: This rule applies to any form of PrintStream constructor.
public class
ClassA {
private
PrintStream stream;
public void
makeStream (OutputStream os) {
stream =
new
PrintStream(os);
//do something...
stream.flush();
stream.close();
}
}