Я помогал другу написать некоторый код Java, который мало знает о Java.Поэтому я написал ему несколько вспомогательных функций, чтобы легко сделать что-то немного странное в его глазах.Одной из них является функция, которая записывает строку в OutputStream
.Взгляните:
public void write(String txt, OutputStream out) {
PrintWriter printer = new PrintWriter(out);
printer.print(txt);
printer.close();
}
Теперь вы можете легко использовать это по-разному, чтобы писать, где вы хотите.Например, вы можете сделать это:
(new StreamHelper()).write("Hello Test", System.out);
Делая это, я обнаружил, что впоследствии System.out.println()
больше ничего не записывает в оболочку.Поэтому я думаю, что, возможно, printer.close()
автоматически также закрыл System.out
, и мне интересно, как его активировать, чтобы я мог использовать его после завершения этой функции.
Верно ли мое предположение?(Как я мог узнать, не спрашивая здесь?)
Как я могу продолжать использовать System.out
после вызова функции write()
?
Существуют ли лучшие способы написания такихвспомогательная функция?