4. setPriority(int р) - метод устанавливает приоритет подпроцесса, задаваемый целым значением, передаваемого методу параметра. В классе Thread есть несколько предопределенных приоритетов-констант: MINJPRIORITY, NORMPRIORITY и MAX PRIORITY, соответствующих значениям 1, 5 и 10. Большинство пользовательских приложений должно выполняться на уровне NORM PRIORITY плюс-минус 1. Приоритет фоновых заданий, например, сетевого ввода-вывода или перерисовки экрана следует устанавливать в MIN_PRIORITY. Запуск подпроцессов на уровне MAX_PRIORITY требует осторожности. Если в подпроцессах с таким уровнем приоритета отсутствуют вызовы sleep или yield, может оказаться, что вся исполняющая система Java перестанет реагировать на внешние раздражители;
5. getPriority - этот метод возвращает текущий приоритет подпроцесса — целое значение в диапазоне от 1 до 10;
setName(String name) - метод присваивает подпроцессу указанное в параметре имя. Это помогает при отладке программ с параллельными подпроцессами. Присвоенное с помощью setName имя будет появляться во всех трассировках стека, которые выводятся при получении интерпретатором неперехваченного исключения;
6. getName - метод возвращает строку с именем подпроцесса, установленным с помощью вызова setName.
Обобщенное понятие источника ввода относится к различным способам получения информации: к чтению дискового файла, символов с клавиатуры либо получению данных из сети. Аналогично под обобщенным понятием вывода также могут пониматься дисковые файлы, сетевое соединение и т. п. Эти абстракции дают удобную возможность для работы с вводом-выводом (I/O), не требуя при этом, чтобы каждая часть вашего кода понимала разницу между, скажем, клавиатурой и сетью. В Java эта абстракция называется потоком (stream) и реализована в нескольких классах пакета java.io. Ввод инкапсулирован в классе InputStream, вывод — в OutputStream. В Java есть несколько специализаций этих абстрактных классов, учитывающих различия при работе с дисковыми файлами, сетевыми соединениями и даже с буферами в памяти.
11.1. Работа с файлами
File— единственный класс в java.io,который работает непосредственно с дисковыми файлами. Хотя на использование файлов в апплетах наложены жесткие ограничения, файлы по-прежнему остаются основными ресурсами для постоянного хранения и совместного использования информации. Каталог в Java трактуется как обычный файл, но с дополнительным свойством — списком имен файлов, который можно просмотреть с помощью метода list.
Для определения стандартных свойств файла в классе File есть много разных методов. Однако класс File несимметричен. Есть много методов, позволяющих узнать свойства объекта, но соответствующие функции для изменения этих свойств отсутствуют. В очередном примере используются различные методы, позволяющие получить характеристики файла:
import java.io.File;
class FileTest {
static void p(String s) {
System.out.println(s);
}
public static void main(String args[]) {
File fl = new File("/java/COP YRIGHT");
р("Имя файла:" + fl .getName());
р("Путь:" + fl.getPath());
р("Полный путь:" + fl.getAbsolutePath());
р("Родительский каталог:" + fl.getParent());
p(fl.exists() ? "существует" : "не существует");
p(fl.canWrite() ? "можно записывать" : "нельзя записывать");
p(fl.canRead() ? "можно читать" : "нельзя читать");
p("is" + ("Директория? "+fl ,isDirectory() ? "да": " нет");
p(fl.isFile() ? "обычный файл" : "не обычный файл");
р("Последняя модификация файла:" + fl. lastModified());
р("Размер файла:" + fl.length() + " Bytes");
}
}
При запуске этой программы вы получите:
Имя файла: COPYRIGHT
Путь: /java/COPYRIGHT
Полный путь:/Java/COPYRIGHT
Родительский каталог:/java
существует
можно записывать
можно читать
Директория? нет
обычный файл
is absolute
Последняя модификация файла:812465204000
Размер файла:695 Bytes
Существует также несколько сервисных методов, использование которых ограничено обычными файлами (их нельзя применять к каталогам). Метод renameTo(File dest) переименовывает файл (нельзя переместить файл в другой каталог). Метод delete уничтожает дисковый файл. Этот метод может удалять только обычные файлы, каталог, даже пустой, с его помощью удалить не удаётся.
11.2. Каталоги
Каталоги — это объекты класса File, в которых содержится список других файлов и каталогов. Если File ссылается на каталог, его метод isDirectoiy возвращает значение true. Вэтом случае вы можете вызвать метод list и извлечь содержащиеся в объекте имена файлов и каталогов. Вочередном примере показано, как с помощью метода list можно просмотреть содержимое каталога.
Читать дальше