Exemplo

public class ClassA {

private PrintStream stream;

public void makeStream (OutputStream os) {

stream = new PrintStream(os);
//executar algo...

stream.flush();
}
}



Solução
Para evitar fugas de recursos, certifique-se de que close() seja chamado em cada java.io.PrintStream. Nota: Essa regra se aplica a qualquer forma de construtor PrintStream.


public class ClassA {

private PrintStream stream;

public void makeStream (OutputStream os) {

stream = new PrintStream(os);
//executar algo...

stream.flush();
stream.close();
}
}