Przykład
public class
ClassA {
private
PrintWriter writer;
public void
makeWriter (OutputStream os) {
writer =
new
PrintWriter(os);
//inne operacje...
}
}
Rozwiązanie
Aby uniknąć przecieków zasobów, upewnij się, czy dla każdej klasy java.io.PrintWriter jest wywoływana metoda close(). Uwaga: ta reguła ma zastosowanie do dowolnej postaci konstruktora PrintWriter.
public class
ClassA {
private
PrintWriter writer;
public void
makeWriter (OutputStream os) {
writer =
new
PrintWriter(os);
//inne operacje...
try
{
writer.close();
}
catch
(IOException ioe) {
//przeprowadź obsługę wyjątku
}
}
}