Spec-Zone .ru
спецификации, руководства, описания, API
Содержание | Предыдущий | Следующий | Индекс

Спецификация языка Java

Джеймс Гослинг
Билл Джой
Гай Стил

Выпуск 1.0
(Преобразованный из печатной книги, август 1996, сначала печатая)


ОТМЕТЬТЕ - документ Ths (особенно главы 20-22) не был обновлен, чтобы включать изменения в спецификацию для Java 1.1. Для списка изменений см. Изменения для Java 1.1, первоначально опубликованный как Приложение D от Языка программирования Java Кеном Арнольдом.

ОТМЕТЬТЕ - списком Разъяснений, и Поправки видят Разъяснения и Поправки.


Серийное Предисловие xxi

Предисловие xxiii

1 Введение 1

1.1 Примеры программы 5
1.2 Ссылки 6

2 Грамматики 7

2.1 Бесконтекстные грамматики 7
2.2 Лексическая Грамматика 7
2.3 Синтаксическая Грамматика 8
2.4 Нотация 8 грамматики

3 Лексических Структуры 11

3.1 Unicode 11
3.2 Лексические Преобразования 12
3.3 Escape Unicode 12
3.4 Разделители строки 13
3.5 Входные Элементы и Маркеры 14
3.6 Пробел 15
3.7 Комментарии 15
3.8 Идентификаторы 17
3.9 Ключевые слова 18
3.10 Литерала 19
3.10.1 Целочисленные Литералы 19
3.10.2 Литералы с плавающей точкой 22
3.10.3 Булевы Литералы 23
3.10.4 Символьные Литералы 24
3.10.5 Строковые литералы 25
3.10.6 Escape-последовательности для Символьных и Строковых литералов 26
3.10.7 Нулевые Литеральные 27
3.11 Разделителя 27
3.12 Оператора 28

4 Типа, Значения, и Переменные 29

4.1 Виды Типов и Значений 30
4.2 Типы примитивов и Значения 30
4.2.1 Целочисленные типы и Значения 31
4.2.2 Целочисленные операции 31
4.2.3 Типы с плавающей точкой и Значения 33
4.2.4 Операции с плавающей точкой 34
4.2.5 Булев Тип и булевы значения 36
4.3 Ссылочные типы и Значения 37
4.3.1 Объекты 38
4.3.2 Объект Класса 40
4.3.3 Строка Класса 41
4.3.4 Когда Ссылочные типы Являются Теми же самыми 42
4.4 Где Типы Используются 42
4.5 Переменные 43
4.5.1 Переменные Типа примитива 44
4.5.2 Переменные Ссылочного типа 44
4.5.3 Виды Переменных 44
4.5.4 Начальные значения Переменных 46
4.5.5 У переменных Есть Типы, у Объектов Есть Классы 47

5 Преобразований и Продвижения 51

5.1 Виды Преобразования 54
5.1.1 Преобразования идентификационных данных 54
5.1.2 Расширение Примитивных Преобразований 54
5.1.3 Сужение Примитивных Преобразований 55
5.1.4 Расширение Ссылочных Преобразований 58
5.1.5 Сужение Ссылочных Преобразований 59
5.1.6 Преобразования строк 60
5.1.7 Запрещенный Преобразования 60
5.2 Преобразование присвоения 61
5.3 Преобразование Вызова метода 66
5.4 Преобразование строк 67
5.5 Кастинг Преобразования 67
5.6 Числовые Продвижения 72
5.6.1 Унарное Числовое Продвижение 73
5.6.2 Двоичное Числовое Продвижение 74

6 Имен 77

6.1 Объявления 78
6.2 Имена и Идентификаторы 79
6.3 Контекст Простого Имени 81
6.3.1 Сокрытие Имен 83
6.4 Элементы и Наследование 85
6.4.1 Элементы Пакета 85
6.4.2 Элементы Типа класса 86
6.4.3 Элементы Интерфейсного Типа 87
6.4.4 Элементы Типа 88 Массива
6.5 Определение Значения Имени 89
6.5.1 Синтаксическая Классификация Имени Согласно Контексту 90
6.5.2 Переклассификация Контекстуально Неоднозначных Имен 91
6.5.3 Значение Имен Пакета 93
6.5.3.1 Простые Имена Пакета 93
6.5.3.2 Квалифицированные Имена Пакета 93
6.5.4 Значение Имен типов 93
6.5.4.1 Простые Имена типов 93
6.5.4.2 Квалифицированные Имена типов 94
6.5.5 Значение Имен Выражения 95
6.5.5.1 Простые Имена Выражения 95
6.5.5.2 Квалифицированные Имена Выражения 96
6.5.6 Значение Имен методов 98
6.5.6.1 Простые Имена методов 98
6.5.6.2 Квалифицированные Имена методов 98
6.6 Полностью определенные имена и Управление доступом 99
6.6.1 Определение Доступности 99
6.6.2 Детали о защищенном доступе 100
6.6.3 Пример Управления доступом 100
6.6.4 Пример: Доступ к общедоступным и Непубличным Классам 101
6.6.5 Пример: Поля доступа по умолчанию, Методы, и Конструкторы 10
6.6.6 Пример: общедоступные Поля, Методы, и Конструкторы 103
6.6.7 Пример: защищенные Поля, Методы, и Конструкторы 104
6.6.8 Пример: частные Поля, Методы, и Конструкторы 105
6.7 Полностью определенные Имена 105
6.8 Соглашения о присвоении имен 106
6.8.1 Имена пакета 107
6.8.2 Класс и Интерфейсные Имена типов 108
6.8.3 Имена методов 108
6.8.4 Имена полей 109
6.8.5 Постоянные Имена 109
6.8.6 Локальная переменная и Названия параметра 110

7 Пакетов 113

7.1 Элементы пакета 114
7.2 Поддержка узла Пакетов 115
7.2.1 Хранение Пакетов в Файловой системе 115
7.2.2 Хранение Пакетов в Базе данных 117
7.3 Единицы компиляции 117
7.4 Объявления пакета 118
7.4.1 Названный Пакетами 118
7.4.2 Неназванные Пакеты 119
7.4.3 Контекст и Сокрытие Имени 120 Пакета
7.4.4 Доступ к Элементам Пакета 120
7.5 Объявления импорта 120
7.5.1 Объявление 121 единственного импорта типа
7.5.2 Объявление "Импорт типа по требованию" 122
7.5.3 Автоматический Импорт 122
7.5.4 Странный Пример 123
7.6 Описания типа 124
7.7 Уникальные Имена Пакета 125

8 Классов 127

8.1 Объявление 128 класса
8.1.1 Контекст Имени 130 Типа класса
8.1.2 Модификаторы класса 130
8.1.2.1 абстрактные классы 131
8.1.2.2 заключительные Классы 133
8.1.3 Суперклассы и Подклассы 133
8.1.4 Суперинтерфейсы 135
8.1.5 Тело класса и Задействованные Объявления 138
8.2 Элементы класса 138
8.2.1 Примеры Наследования 139
8.2.1.1 Пример: Наследование с Доступом По умолчанию 140
8.2.1.2 Наследование с общественностью и защищенный 141
8.2.1.3 Наследование с частным 141
8.2.1.4 Доступ к Элементам Недоступных Классов 142
8.3 Полевые Объявления 143
8.3.1 Полевые Модификаторы 144
8.3.1.1 статические Поля 145
8.3.1.2 заключительные Поля 146
8.3.1.3 переходные Поля 147
8.3.1.4 энергозависимые Поля 147
8.3.2 Инициализация Полей 149
8.3.2.1 Инициализаторы для Переменных Класса 149
8.3.2.2 Инициализаторы например Переменные 150
8.3.3 Примеры Полевых Объявлений 151
8.3.3.1 Пример: Сокрытие Переменных Класса 151
8.3.3.2 Пример: Сокрытие Переменных экземпляра 152
8.3.3.3 Пример: Умножьте Наследованные Поля 153
8.3.3.4 Пример: перенаследование Полей 154
8.4 Объявления метода 155
8.4.1 Формальные параметры 156
8.4.2 Сигнатура метода 157
8.4.3 Модификаторы метода 157
8.4.3.1 абстрактные Методы 158
8.4.3.2 статические Методы 160
8.4.3.3 заключительные Методы 160
8.4.3.4 собственные Методы 161
8.4.3.5 синхронизируемые Методы 161
8.4.4 Броски метода 163
8.4.5 Тело метода 164
8.4.6 Наследование, Переопределение, и Сокрытие 165
8.4.6.1 Переопределение (Методами экземпляра) 165
8.4.6.2 Сокрытие (Методами Класса) 165
8.4.6.3 Требования в Переопределении и Сокрытии 166
8.4.6.4 Наследование Методов с Той же самой Подписью 166
8.4.7 Перегрузка 167
8.4.8 Примеры Объявлений метода 168
8.4.8.1 Пример: Переопределение 168
8.4.8.2 Пример: Перегрузка, Переопределение, и Сокрытие 168
8.4.8.3 Пример: Неправильное Переопределение 169
8.4.8.4 Пример: Переопределение против Сокрытия 170
8.4.8.5 Пример: Вызов Скрытых Методов Класса 171
8.4.8.6 Большой Пример Переопределения 172
8.4.8.7 Пример: Неправильное Переопределение из-за Бросков 174
8.5 Статические Инициализаторы 175
8.6 Объявления конструктора 176
8.6.1 Формальные параметры 177
8.6.2 Подпись 177 конструктора
8.6.3 Модификаторы конструктора 177
8.6.4 Броски конструктора 178
8.6.5 Тело конструктора 178
8.6.6 Конструктор, Перегружающий 180
8.6.7 Конструктор по умолчанию 180
8.6.8 Предотвращение Инстанцирования Класса 180

9 Интерфейсов 183

9.1 Интерфейсные Объявления 184
9.1.1 Контекст Интерфейсного Имени типа 184
9.1.2 Интерфейсные Модификаторы 184
9.1.2.1 абстрактные Интерфейсы 184
9.1.3 Суперинтерфейсы 185
9.1.4 Интерфейсные Объявления Тела и Элемента 185
9.1.5 Доступ, чтобы Соединить интерфейсом с Именами элемента 186
9.2 Интерфейсные Элементы 186
9.3 Поле (Постоянные) Объявления 186
9.3.1 Инициализация Полей в Интерфейсах 187
9.3.2 Примеры Полевых Объявлений 188
9.3.2.1 Неоднозначные Наследованные Поля 188
9.3.2.2 Умножьте Наследованные Поля 188
9.4 Абстрактные Объявления метода 189
9.4.1 Наследование и Переопределение 189
9.4.2 Перегрузка 190
9.4.3 Примеры Абстрактных Объявлений метода 190
9.4.3.1 Пример: Переопределение 190
9.4.3.2 Пример: Перегрузка 191

10 Массивов 193

10.1 Типы массива 194
10.2 Переменные типа массив 194
10.3 Создание массива 195
10.4 Доступ массива 195
10.5 Массивы: Простой Пример 196
10.6 Инициализаторы массивов 196
10.7 Элементы массива 197
10.8 Объекты класса для Массивов 199
10.9 Массивом Символов Не является Строка 199
10.10 Исключений Хранилища Массива 199

11 Исключений 201

11.1 Причины Исключений 202
11.2 Время компиляции Проверяя Исключений 203
11.2.1 Почему Ошибки Не Проверяются 203
11.2.2 Почему Исключения на этапе выполнения Не Проверяются 203
11.3 Обработка Исключения 204
11.3.1 Исключения Точны 205
11.3.2 Обработка Асинхронных Исключений 205
11.4 Пример Исключений 206
11.5 Иерархия Исключения 208
11.5.1 Исключение Классов и RuntimeException 208
11.5.1.1 Стандартные Исключения на этапе выполнения 208
11.5.1.2 Стандартные Проверенные Исключения 210
11.5.2 Ошибка Класса 211
11.5.2.1 Загрузка и Ошибки Редактирования 211
11.5.2.2 Ошибки Виртуальной машины 212

12 Выполнения 215

12.1 Запуск Виртуальной машины 215
12.1.1 Загрузите Тест Класса 216
12.1.2 Тест ссылки: Проверьте, Подготовьтесь, (Дополнительно) Решение 216
12.1.3 Инициализируйте Тест: Выполните Инициализаторы 217
12.1.4 Вызовите Test.main 218
12.2 Загрузка Классов и Интерфейсов 218
12.2.1 Процесс загрузки 219
12.2.2 Загрузка: Импликации для Генерации кода 219
12.3 Соединение Классов и Интерфейсов 220
12.3.1 Проверка Двоичного Представления 220
12.3.2 Подготовка Класса или Интерфейсного Типа 221
12.3.3 Разрешение Символьных Ссылок 221
12.3.4 Соединение: Импликации для Генерации кода 222
12.4 Инициализация Классов и Интерфейсов 223
12.4.1 Когда Инициализация Происходит 223
12.4.2 Подробная Процедура 225 Инициализации
12.4.3 Инициализация: Импликации для Генерации кода 227
12.5 Создание Новых Экземпляров Класса 228
12.6 Завершение Экземпляров Класса 231
12.6.1 Реализация Завершения 232
12.6.2 Вызовы финализатора Не Упорядочиваются 234
12.7 Завершение Классов 235
12.8 Разгрузка Классов и Интерфейсов 235
12.9 Выход Виртуальной машины 235

13 Совместимостей на уровне двоичных кодов 237

13.1 Форма Двоичного файла Java 238
13.2 Что Совместимость на уровне двоичных кодов и Не Является 240
13.3 Развитие Пакетов 242
13.4 Развитие Классов 242
13.4.1 абстрактные классы 242
13.4.2 заключительные Классы 242
13.4.3 общедоступные Классы 243
13.4.4 Суперклассы и Суперинтерфейсы 243
13.4.5 Тело класса и Задействованные Объявления 245
13.4.6 Доступ к Элементам и Конструкторам 248
13.4.7 Полевые Объявления 249
13.4.8 заключительные Поля и Константы 250
13.4.9 статические Поля 253
13.4.10 переходные Поля 253
13.4.11 энергозависимые Поля 253
13.4.12 Метод и Объявления Конструктора 253
13.4.13 Метод и Параметры Конструктора 254
13.4.14 Тип 254 Результата метода
13.4.15 абстрактные Методы 254
13.4.16 заключительные Методы 255
13.4.17 собственные Методы 256
13.4.18 статические Методы 256
13.4.19 синхронизируемые Методы 256
13.4.20 Метод и Броски Конструктора 256
13.4.21 Метод и Тело Конструктора 257
13.4.22 Метод и Конструктор, Перегружающий 257
13.4.23 Метод, Переопределяющий 258
13.4.24 Статические Инициализаторы 259
13.5 Развитие Интерфейсов 259
13.5.1 открытые интерфейсы 259
13.5.2 Суперинтерфейсы 260
13.5.3 Интерфейсные Элементы 260
13.5.4 Полевые Объявления 260
13.5.5 Абстрактные Объявления метода 261

14 Блоков и Операторы 263

14.1 Нормальное и Резкое Завершение Операторов 264
14.2 Блоки 265
14.3 Операторы объявления Локальной переменной 265
14.3.1 Операторы объявления Локальной переменной и Типы 266
14.3.2 Контекст Объявлений Локальной переменной 267
14.3.3 Сокрытие Имен Локальными переменными 268
14.3.4 Выполнение Объявлений Локальной переменной 269
14.4 Операторы 269
14.5 Пустой Оператор 271
14.6 Помеченные операторы 271
14.7 Операторы выражения 272
14.8 Если Оператор 273
14.8.1 Если тогда Оператор 273
14.8.2 Оператор, "если тогда еще" 273
14.9 Оператор переключения 274
14.10, в то время как Оператор 277
14.10.1 Резкое Завершение 278
14.11 делают Оператор 278
14.11.1 Резкое Завершение 279
14.11.2 Пример делает оператор 280
14.12 для Оператора 280
14.12.1 Инициализация для оператора 281
14.12.2 Итерация для оператора 281
14.12.3 Резкое Завершение для оператора 282
14.13 оператор завершения 283
14.14 продолжать Оператор 285
14.15 оператор возврата 286
14.16 Оператор 287 броска
14.17 синхронизируемый Оператор 289
14.18 оператор 290 попытки
14.18.1 Выполнение выгоды попытки 291
14.18.2 Выполнение "попытки ловит наконец" 292
14.19 Недостижимых Операторов 295

15 Выражений 301

15.1 Оценка, Обозначение, и Результат 301
15.2 Переменные как Значения 302
15.3 Тип Выражения 302
15.4 Выражения и Проверки на этапе выполнения 302
15.5 Нормальное и Резкое Завершение Оценки 304
15.6 Порядок 305 оценки
15.6.1 Оцените Левый Операнд Сначала 305
15.6.2 Оцените Операнды перед Работой 307
15.6.3 Круглые скобки Отношений оценки и Приоритет 308
15.6.4 Списки параметров Оцениваются Слева направо 309
15.6.5 Порядок оценки на Другие Выражения 310
15.7 Основные Выражения 311
15.7.1 Литералы 312
15.7.2 эти 313
15.7.3 Заключенные в скобки Выражения 313
15.8 Выражения Создания Экземпляра класса 314
15.8.1 Оценка времени выполнения Выражений Создания Экземпляра Класса 314^ М.
15.8.2 Пример: Порядок Оценки и Обнаружение Из памяти 315
15.9 Выражения Создания массива 315
15.9.1 Оценка времени выполнения Выражений Создания Массива 316
15.9.2 Пример: Порядок 318 Оценки Создания Массива
15.9.3 Пример: Создание Массива и Обнаружение Из памяти 319
15.10 Выражений Доступа к полю 319
15.10.1 Доступ к полю Используя Основные 320
15.10.2 Доступ к Элементам Суперкласса, использующим супер 322
15.11 Выражений Вызова метода 323
15.11.1 Шаг 1 времени компиляции: Определите Класс или Интерфейс, чтобы Искать 324
15.11.2 Шаг 2 времени компиляции: Определите Сигнатуру метода 325
15.11.2.1 Найдите Методы, которые являются Применимыми и Доступными 325
15.11.2.2 Выберите Самый определенный Метод 327
15.11.2.3 Пример: Перегрузка Неоднозначности 327
15.11.2.4 Пример: Возвратите Тип, который Не Рассматривают 328
15.11.2.5 Пример: Разрешение времени компиляции 329
15.11.3 Шаг 3 времени компиляции: Выбранный Метод является Соответствующим? 332
15.11.4 Оценка времени выполнения Вызова метода 333
15.11.4.1 Вычислите Целевую Ссылку (В случае необходимости) 333
15.11.4.2 Оцените Параметры 334
15.11.4.3 Проверьте Доступность Типа и Метода 334
15.11.4.4 Определите местоположение Метода, чтобы Вызвать 335
15.11.4.5 Создайте Фрейм, Синхронизируйтесь, Управление Передачей 336
15.11.4.6 Примечание реализации: Объединение Фреймов 337
15.11.4.7 Пример: Целевые Ссылочные и Статические Методы 337
15.11.4.8 Пример: Порядок 338 Оценки
15.11.4.9 Пример: Переопределение 338
15.11.4.10 Пример: Вызов метода, использующий супер 340
15.12 Выражений Доступа Массива 341
15.12.1 Оценка времени выполнения Доступа Массива 341
15.12.2 Примеры: Порядок 342 Оценки Доступа Массива
15.13 Постфиксных Выражений 344
15.13.1 Имена 344
15.13.2 Постфиксный Инкрементный Оператор ++ 345
15.13.3 Постфиксный Декрементный Оператор - 345
15.14 Унарных операторов 346
15.14.1 Префиксный Инкрементный Оператор ++ 347
15.14.2 Префиксный Декрементный Оператор - 348
15.14.3 Унарный Плюс Оператор + 348
15.14.4 Оператор унарный минус - 349
15.14.5 Поразрядный Дополнительный Оператор ~ 349
15.14.6 Логический Дополнительный Оператор! 349
15.15 Выражений Броска 350
15.16 Мультипликативных Операторов 351
15.16.1 Оператор умножения * 351
15.16.2 Оператор подразделения / 352
15.16.3 % Оператора остатка 353
15.17 Аддитивных Операторов 355
15.17.1 Оператор Конкатенации строк + 355
15.17.1.1 Преобразование строк 355
15.17.1.2 Оптимизация Конкатенации строк 356
15.17.1.3 Примеры Конкатенации строк 356
15.17.2 Аддитивные Операторы (+ и-) для Числовых Типов 358
15.18 Операторов Сдвига 359
15.19 Операторов отношения 360
15.19.1 Числовые Операторы сравнения <<=>, и> = 361
15.19.2 Оператор Сравнения типов instanceof 361
15.20 Операторов Равенства 362
15.20.1 Числовые Операторы Равенства == и! = 363
15.20.2 Булевы Операторы Равенства == и! = 364
15.20.3 Ссылочные Операторы Равенства == и! = 364
15.21 Логических операторов и Логические операторы 365
15.21.1 Целочисленные Логические операторы &, ^, и | 365
15.21.2 Булевы Логические операторы &, ^, и | 365
15.22 Условных выражений - И Оператор && 366
15.23 Условных выражений - Или Оператор || 366
15.24 Условных Операторов?: 367
15.25 Операторов присваивания 369
15.25.1 Простой Оператор присваивания = 369
15.25.2 Составные Операторы присваивания 374
15.26 Выражений 381
15.27 Константных выражений 381

16 Определенных Присвоений 383

16.1 Определенное Присвоение и Выражения 386
16.1.1 Булевы Константные выражения 386
16.1.2 Оцененные булевской переменной Выражения 386
16.1.3 Булев оператор && 386
16.1.4 Булев оператор || 387
16.1.5 Булев оператор! 387
16.1.6 Булев оператор & 387
16.1.7 Булев оператор | 388
16.1.8 Булев оператор ^ 388
16.1.9 Булев оператор == 389
16.1.10 Булев оператор! = 389
16.1.11 Булев оператор?: 389
16.1.12 Условный Оператор?: 390
16.1.13 Булевы Выражения Присвоения 390
16.1.14 Другие Выражения Присвоения 391
16.1.15 Операторы ++ и - 392
16.1.16 Другие Выражения 392
16.2 Определенное Присвоение и Операторы 393
16.2.1 Пустые Операторы 393
16.2.2 Блоки 393
16.2.3 Операторы объявления Локальной переменной 393
16.2.4 Помеченные операторы 394
16.2.5 Операторы выражения 394
16.2.6 если Операторы 394
16.2.7 операторы переключения 395
16.2.8 в то время как Операторы 395
16.2.9 сделайте Операторы 395
16.2.10 для Операторов 396
16.2.10.1 Часть 396 инициализации
16.2.10.2 Часть 397 приращения
16.2.11 повредите, продолжайте, возвратите, и бросьте Операторы 397
16.2.12 синхронизируемые Операторы 397
16.2.13 попробуйте Операторы 398

17 Потоков и Блокировки 399

17.1 Терминология и Платформа 401
17.2 Порядок выполнения 403
17.3 Правила о Переменных 404
17.4 Неатомарная Обработка двойных и длинных 405
17.5 Правила о Блокировках 406
17.6 Правила о Взаимодействии Блокировок и Переменных 407
17.7 Правила для Энергозависимых Переменных 407
17.8 Наделенные даром предвидения Действия Хранилища 408
17.9 Обсуждение 408
17.10 Примеров: Возможная Подкачка 409
17.11 Примеров: не в порядке Записи 413
17.12 Потоков 415
17.13 Блокировок и Синхронизация 415
17.14 Ожидают Наборы и Уведомление 416

18 Комментариев для документации 419

18.1 Текст Комментария для документации 419
18.2 HTML в Комментарии для документации 420
18.3 Сводное Предложение и Общее Описание 420
18.4 Теговые Абзацы 420
18.4.1 Тег @see 421
18.4.2 Тег @author 421
18.4.3 Тег @version 422
18.4.4 Тег @param 422
18.4.5 Тег @return 422
18.4.6 Тег @exception 422
18.5 Пример 423

19 LALR (1) Грамматика 433

19.1 Грамматические Трудности 433
19.1.1 Проблема #1: Называет Слишком Определенные 433
19.1.2 Проблема #2: Модификаторы Слишком Определенные 435
19.1.3 Проблема #3: Полевое Объявление против Объявления метода 437^ М.
19.1.4 Проблема #4: Тип Массива против Доступа Массива 438
19.1.5 Проблема #5: Бросок против Заключенного в скобки Выражения 438
19.2 Производство от §2.3: Синтаксическая Грамматика 440
19.3 Производство от §3: Лексическая Структура 440
19.4 Производство от §4: Типы, Значения, и Переменные 440
19.5 Производство от §6: Имена 441
19.6 Производство от §7: Пакеты 442
19.7 Производство, Используемое Только в LALR (1) Грамматика 442
19.8 Производство от §8: Классы 443
19.8.1 Производство от §8.1: Объявление 443 Класса
19.8.2 Производство от §8.3: Полевые Объявления 443
19.8.3 Производство от §8.4: Объявления метода 444
19.8.4 Производство от §8.5: Статические Инициализаторы 444
19.8.5 Производство от §8.6: Объявления Конструктора 445
19.9 Производство от §9: Интерфейсы 445
19.9.1 Производство от §9.1: Интерфейсные Объявления 445
19.10 Производства от §10: Массивы 446
19.11 Производства от §14: Блоки и Операторы 446
19.12 Производства от §15: Выражения 450

20 Пакет java.lang 455

20.1 Класс java.lang. Объект 458
20.2 Интерфейс java.lang. Cloneable 465
20.3 Класс java.lang. Класс 466
20.4 Класс java.lang. Булевская переменная 469
20.5 Класс java.lang. Символ 471
20.6 Класс java.lang. Номер 487
20.7 Класс java.lang. Целое число 488
20.8 Класс java.lang. Долго 495
20.9 Класс java.lang. Пустите в ход 503
20.10 Класс java.lang. Удвойте 510
20.11 Класс java.lang. Математика 517
20.12 Класс java.lang. Представьте в виде строки 531
20.13 Класс java.lang. StringBuffer 548
20.14 Класс java.lang. ClassLoder 558
20.15 Класс java.lang. Обработайте 561
20.16 Класс java.lang. Время выполнения 563
20.17 Класс java.lang. SecurityManager 569
20.18 Класс java.lang. Система 579
20.19 Интерфейс java.lang. Выполнимые 586
20.20 Класс java.lang. Распараллельте 587
20.21 Класс java.lang. ThreadGroup 602
20.22 Класс java.lang. Throwable и его Подклассы 611
20.23 Класс java.lang. ExceptionInInitializerError 614

21 Пакет java.util 615

21.1 Интерфейс java.util. Перечисление 617
21.2 Класс java.util. BitSet 618
21.3 Класс java.util. Дата 622
21.4 Класс java.util. Словарь 633
21.5 Класс java.util. Хеш-таблица 635
21.6 Класс java.util. Свойства 639
21.7 Класс java.util. Заметные 643
21.8 Интерфейс java.util. Наблюдатель 645
21.9 Класс java.util. Случайные 646
21.10 Класс java.util. StringTokenizer 651
21.11 Класс java.util. Вектор 654
21.12 Класс java.util. Сложите 661
21.13 Класс java.util. EmptyStackException 663
21.14 Класс java.util. NoSuchElementException 664

22 Пакет java.io 665

22.1 Интерфейс java.io. DataInput 667
22.2 Интерфейс java.io. DataOutput 674
22.3 Класс java.io. InputStream 680
22.4 Класс java.io. FileInputStream 684
22.5 Класс java.io. PipedInputStream 687
22.6 Класс java.io. ByteArrayInputStream 689
22.7 Класс java.io. StringBufferInputStream 692
22.8 Класс java.io. SequenceInputStream 694
22.9 Класс java.io. FilterInputStream 696
22.10 Класс java.io. BufferedInputStream 699
22.11 Класс java.io. DataInputStream 703
22.12 Класс java.io. LineNumberInputStream 707
22.13 Класс java.io. PushbackInputStream 710
22.14 Класс java.io. StreamTokenizer 712
22.15 Класс java.io. OutputStream 720
22.16 Класс java.io. FileOutputStream 722
22.17 Класс java.io. PipedOutputStream 725
22.18 Класс java.io. ByteArrayOutputStream 727
22.19 Класс java.io. FilterOutputStream 730
22.20 Класс java.io. BufferedOutputStream 732
22.21 Класс java.io. DataOutputStream 734
22.22 Класс java.io. PrintStream 738
22.23 Класс java.io. RandomAccessFile 743
22.24 Класс java.io. Файл 752
22.25 Интерфейс java.io. FilenameFilter 759
22.26 Класс java.io. FileDescriptor 760
22.27 Класс java.io. IOException 761
22.28 Класс java.io. EOFException 762
22.29 Класс java.io. FileNotFoundException 763
22.30 Класс java.io. InterruptedIOException 764
22.31 Класс java.io. UTFDataFormatException 765

Индекс 767


Содержание | Предыдущий | Следующий | Индекс

Спецификация языка Java (HTML, сгенерированный Блинчиком "сюзет" Pelouch 24 февраля 1998)
Авторское право © Sun Microsystems, Inc 1996 года. Все права защищены
Пожалуйста, отправьте любые комментарии или исправления к doug.kramer@sun.com

free hit counter