Страницы

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

среда, 12 февраля 2020 г.

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

#java #io


Почему такой пример выполняется, не выдвавая никаких исключений.  

PrintWriter os = new PrintWriter(System.out, true); 
os.close(); 
os.println("text");

    


Ответы

Ответ 1



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()}. Т.е. он проглатывает все ошибки, связанные с вводом-выводом.

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

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