| |
ны
Вызвав для задачи метод setDaemon, вы превращаете обычную задачу в
задачу-демон. Такая задача работает в фоновом режиме независимо от породившей
ее задачи. Если задача-демон создает другие задачи, то они также станут получат
статус задачи-демона.
Заметим, что метод setDaemon необходимо вызывать после создания задачи, но
до момента ее запуска, то есть перед вызовом метода start.
С помощью метода isDaemon вы можете проверить, является задача демоном, или
нет.
2 РАБОТА С ФАЙЛАМИ
Библиотека классов языка программирования Java содержит многочисленные
средства, предназначенные для работы с файлами. И хотя аплеты не имеют доступа
к локальным файлам, расположенным на компьютере пользователя, они могут
обращаться к файлам, которые находятся в каталоге сервера Web. Автономные
приложения Java могут работать как с локальными, так и с удаленными файлами
(через сеть Internet или Intranet).
В любом случае, будете ли вы создавать автономные приложения Java или аплеты,
взаимодействующие с сервером Web через сеть, вы должны познакомиться с
классами, предназначенными для организации ввода и вывода.
Классы Java для работы с потоками
Программист, создающий автономное приложение Java, может работать с потоками
нескольких типов:
* стандартные потоки ввода и вывода;
* потоки, связанные с локальными файлами;
* потоки, связанные с файлами в оперативной памяти;
* потоки, связанные с удаленными файлами
Рассмотрим кратко классы, связанные с потоками.
Стандартные потоки
Для работы со стандартными потоками в классе System имеется три статических
объекта: System.in, System.out и System.err. По своему назначению эти потоки
больше всего напоминают стандартные потоки ввода, вывода и вывода сообщений об
ошибках операционной системы MS-DOS.
Поток System.in связан с клавиатурой, поток System.out и System.err - с
консолью приложения Java.
Базовые классы для работы с файлами и потоками
Количество классов, созданных для работы с файлами, достаточно велико, чтобы
привести начинающего программиста в растерянность. Прежде чем мы займемся
конкретными классами и приведем примеры приложений, работающих с потоками и
файлами, рассмотрим иерархию классов, предназначенных для орагнизации ввода и
вывода.
Все основные классы, интересующие нас в этой главе, произошли от класса
Object (рис. 2.1).
Рис. 2.1. Основные классы для работы с файлами и потоками
Класс InputStream
Класс InputStream является базовым для большого количества классов, на базе
которых создаются потоки ввода. Именно эти, производные классы применяются
программистами, так как в них имеются намного более мощные методы, чем в классе
InputStream. Эти методы позволяют работать с потоком ввода не на уровне
отдельных байт, а на уровне объектов различных классов, например, класса String
и других.
Класс OutputStream
Аналогично, класс OutputStream служит в качестве базового для различных
классов, имеющих отношение к потокам вывода.
Класс RandomAccesFile
С помощью класса RandomAccesFile можно организовать работу с файлами в
режиме прямого доступа, когда программа указывает смещен
|
|