Страницы

Поиск по вопросам

понедельник, 22 апреля 2019 г.

Странности с закрытием PrintWriter в Java

Почему такой пример выполняется, не выдвавая никаких исключений.
PrintWriter os = new PrintWriter(System.out, true); os.close(); os.println("text");


Ответ

PrintWriter не совсем обычный класс, если посмотреть документацию к классу, то увидим следующее:
Methods in this class never throw I/O exceptions, although some of its constructors may. The client may inquire as to whether any errors have occurred by invoking {@link #checkError checkError()}.
Т.е. он проглатывает все ошибки, связанные с вводом-выводом.

Комментариев нет:

Отправить комментарий