Главная » Java » Стандартные потоки ввода-вывода

0

 

   Стандартные потоки ввода (input), вывода (output) данных и сообщений об ошибках (error),  кратко описанные ниже,  представляются в виде статических полей класса System.

 

 public static final   inputstream in

                Стандартный поток ввода данных.

 public static final   PrintStream out

                Стандартный поток вывода данных

 public static final   PrintStream err

Стандартный поток вывода сообщений об ошибках. Зачастую полезно перенаправлять стандартный вывод в файл, но приложениям необходима возможность вывода сообщений об ошибках даже в том случае, когда стандартный вывод перенаправлен. Поток err специально предназначен для вывода сообщений об ошибках, которые не маршрутизируются иными стандартными средствами.

  Так сложилось, что и out, и err относятся к классу PrintStream, а не PrintWriter, что было бы более целесообразно (за сведениями о типах PrintStream и PrintWriter обращайтесь к разделу 15.4.8).

  Хотя каждое из полей объявлено как final, методы setln, setOut и setErr дают возможность переопределять потоки, на которые указывает каждая из ссылок (это достигается средствами native-кода., позволяющего «обходить»   ограничения уровня языка, которые запрещают присваивание переменнымновых значений). При вызове методов set проверяется наличие соответствующих полномочий доступа — если у вас нет прав на изменение стандартного потока, выбрасывается исключение типа Securi tyException.

 

Источник: Арнолд, Кен, Гослинг, Джеймс, Холмс, Дэвид. Язык программирования Java. 3-е изд .. : Пер. с англ. – М. : Издательский дом «Вильяме», 2001. – 624 с. : ил. – Парал. тит. англ.

По теме:

  • Комментарии