Spec-Zone.ru › Java Language Specification 7

Индекс

Символы

= оператор
присваивание и преобразование, 5.2
выражения и проверки во время выполнения, 15.5, 15.5
нормальное и прерывистое завершение оценки, 15.6, 15.6
@Deprecated, 9.6.3.6
@Inherited, 9.6.3.3
@Override, 9.6.3.4
@Retention, 9.6.3.2
@SafeVarargs, 9.6.3.7
формальные параметры, 8.4.1
@SuppressWarnings, 9.6.3.5
проверка типов с проверкой и без проверки, 5.5.2
формальные параметры, 8.4.1
наследование методов с эквивалентными по переопределению сигнатурами, 8.4.8.4, 8.4.8.4
требования к переопределению и скрытию, 8.4.8.3
преобразование без проверки, 5.1.9
@Target, 9.6.3.1

А

Прерывание выполнения оператора do, 14.13.1
Оператор do, 14.13
Прерывание выполнения оператора for, 14.14.1.3
Итерация оператора for, 14.14.1.2
Прерывание выполнения оператора while, 14.12.1
Оператор while, 14.12
Абстрактные классы, 8.1.1.1, 13.4.1
Абстрактные методы, 8.4.3.1
Анонимные объявления классов, 15.9.5
Выражения создания массивов, 15.10
Финальные классы, 8.1.1.2
Разрешение символических ссылок, 12.3.3
Суперинтерфейсы, 8.1.5
Абстрактные интерфейсы, 9.1.1.1
Объявления абстрактных методов, 9.4
Абстрактные классы, 8.1.1.1
Аннотации, 9.7
Объявления, 6.1, 6.1
Тело интерфейса и объявления членов, 9.1.4
Необработанные типы, 4.8
Синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
Абстрактные методы, 8.4.3.1, 13.4.16, 13.5.6
Абстрактные классы, 8.1.1.1
Управление доступом, 6.6
Объявления абстрактных методов, 9.4
Литералы класса, 15.8.2
Модификаторы класса, 8.1.1, 8.1.1
Объявления конструкторов, 8.8
Конструктор по умолчанию, 8.8.9, 8.8.9
Определение класса, который создается, 15.9.1, 15.9.1, 15.9.1, 15.9.1
Явные вызовы конструкторов, 8.8.7.1, 8.8.7.1
Доступ к полю с использованием первичного, 15.11.1
Определение потенциально применимых методов, 15.12.2.1
Объявления импорта, 7.5
Объявления локального класса, 14.3
Объявления типов-членов, 8.5
Модификаторы метода, 8.4.3
Обычные аннотации, 9.7.1
Объекты, 4.3.1
Квалифицированные имена выражений, 6.5.6.2, 6.5.6.2, 6.5.6.2
Квалифицированные имена типов, 6.5.5.2, 6.5.5.2
Типы ссылок и значения, 4.3
Требования при переопределении и скрытии, 8.4.8.3
Затемнение и затемнение, 6.4
Объявления одиночного статического импорта, 7.5.3
Объявления одиночного импорта типа, 7.5.1
Объявления статического импорта по требованию, 7.5.4
Суперклассы и подклассы, 8.1.4
Суперинтерфейсы, 8.1.5
Суперинтерфейсы и подинтерфейсы, 9.1.3
Объявления типов верхнего уровня, 7.6
Объявления импорта типа по требованию, 7.5.2
Доступ к защищенному члену, 6.6.2.1
Доступ к членам и конструкторам, 13.4.7
Разрешение символических ссылок, 12.3.3
Доступ к членам суперкласса с помощью super, 15.11.2
Объявления полей, 8.3
Инициализация полей в интерфейсах, 9.3.1
Инициализаторы переменных класса, 8.3.2.1
Инициализаторы переменных экземпляра, 8.3.2.2
Инициализаторы экземпляров, 8.6
Статические методы, 8.4.3.2
Синтаксическая классификация имени в зависимости от контекста, 6.5.1
Действия, 17.4.2
Порядок синхронизации, 17.4.4
Аддитивные операторы, 15.18
Константные выражения, 15.28
Целочисленные операции, 4.2.2
Аддитивные операторы (+ и -) для числовых типов, 15.18.2
Двоичное числовое продвижение, 5.6.2
Операции с плавающей точкой, 4.2.4
Массив символов не является строкой, 10.9
Элементы типа аннотации, 9.6.1
Типы аннотаций, 9.6
Типы аннотаций, 9.6
объявления абстрактных методов, 9.4
аннотации, 9.7, 9.7
модификаторы класса, 8.1.1
модификаторы конструктора, 8.8.3
константы перечисления, 8.9.1
объявления полей (констант), 9.3
модификаторы полей, 8.3.1
формальные параметры, 8.4.1
объявления интерфейсов, 9.1
модификаторы интерфейсов, 9.1.1
модификаторы методов, 8.4.3
имена пакетов, 7.4.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
аннотации, 9.7
объявления абстрактных методов, 9.4
типы аннотаций, 9.6
модификаторы класса, 8.1.1
модификаторы конструктора, 8.8.3
значения по умолчанию для элементов типа аннотации, 9.6.2, 9.6.2
константы перечисления, 8.9.1
оценка, обозначение и результат, 15.1
объявления полей (констант), 9.3
модификаторы полей, 8.3.1
формальные параметры, 8.4.1
модификаторы интерфейсов, 9.1.1
деклараторы и типы локальных переменных, 14.4.1
декларации типов-членов, 8.5
модификаторы методов, 8.4.3
имена пакетов, 7.4.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
объявления анонимных классов, 15.9.5
выражения создания экземпляров класса, 15.9, 15.9
модификаторы класса, 8.1.1
определенное присваивание и анонимные классы, 16.6
константы перечисления, 8.9.1
форма двоичного, 13.1
инициализация полей в интерфейсах, 9.3.1
вложенные классы и окружающие экземпляры, 8.1.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
анонимные конструкторы, 15.9.5.1
выбор конструктора и его аргументов, 15.9.3
списки аргументов оцениваются слева направо, 15.7.4
доступ к массиву, 10.4
выражения доступа к массиву, 15.13
доступ к массиву, 10.4
операторы присваивания, 15.26
составные операторы присваивания, 15.26.2
выражения и проверки во время выполнения, 15.5, 15.5
нормальное и внезапное завершение оценки, 15.6, 15.6
оператор простого присваивания =, 15.26.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
унарное числовое продвижение, 5.6.1
создание массива, 10.3
выражения создания массивов, 15.10
создание массива, 10.3
инициализаторы массивов, 10.6
начальные значения переменных, 4.12.5
виды переменных, 4.12.3
нормальное и внезапное завершение оценки, 15.6, 15.6
объекты, 4.3.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
унарное числовое продвижение, 5.6.1
инициализаторы массивов, 10.6
создание массива, 10.3
определенное присваивание и инициализаторы массивов, 16.4
нормальное и внезапное завершение оценки, 15.6
нормальные аннотации, 9.7.1
объекты, 4.3.1
вычисление выражений создания массивов во время выполнения, 15.10.1
члены массива, 10.7
объявления, 6.1, 6.1
порядок «происходит до», 17.4.5
исключение array store, 10.5
переменные массива, 10.2
преобразование присваивания, 5.2
выражения и проверки во время выполнения, 15.5, 15.5
нормальное и внезапное завершение оценки, 15.6
переменные, 4.12
типы массивов, 10.1
расширенный оператор for, 14.14.2
сырые типы, 4.8
реализуемые типы, 4.7
переменные массива, 10.2
расширенный оператор for, 14.14.2
формальные параметры, 8.4.1
массивы, 10
элементы типа аннотации, 9.6.1
выражения создания массивов, 15.10
виды переменных, 4.12.3
справочные типы и значения, 4.3
когда справочные типы одинаковы, 4.3.4
утверждение assert, 14.10
утверждения assert, 16.2.8
подробная процедура инициализации, 12.4.2
когда происходит инициализация, 12.4.1
утверждения assert, 16.2.8
преобразование присваивания, 5.2
инициализаторы массивов, 10.6
исключение при хранении в массиве, 10.5
переменные массива, 10.2
выполнение try-catch, 14.20.1
выражения и проверки во время выполнения, 15.5, 15.5
вывод неразрешенных аргументов типа, 15.12.2.8
нормальные аннотации, 9.7.1
оператор return, 14.17
простой оператор присваивания =, 15.26.1, 15.26.1
оператор switch, 14.11
оператор throw, 14.18, 14.18
тип выражения, 15.3
переменные, 4.12
выражения присваивания, 16.1.8
операторы присваивания, 15.26
преобразование присваивания, 5.2
выражения присваивания, 16.1.8
порядок вычисления других выражений, 15.7.5
начальные значения переменных, 4.12.5
инициализация полей, 8.3.2
синтаксическая классификация имени в зависимости от контекста, 6.5.1
оператор try, 14.20
переменные, 4.12
асинхронные исключения, 11.1.3
причины исключений, 11.1.2

B

базовое оператор for, 14.14.1
операторы for, 16.2.12
область видимости объявления, 6.3
базовый try-with-resources, 14.20.3.1
расширенный try-with-resources, 14.20.3.2
бинарная совместимость, 13
бинарное числовое повышение, 5.6.2
аддитивные операторы (+ и -) для числовых типов, 15.18.2
условный оператор ? :, 15.25
оператор деления /, 15.17.2
битовые операторы целых чисел &, ^ и |, 15.22.1
мультипликативные операторы, 15.17
повышение числовых типов, 5.6
числовые операторы сравнения <, <=, > и >=, 15.20.1
числовые операторы равенства == и !=, 15.21.1
постфиксный оператор декремента --, 15.14.3
постфиксный оператор инкремента ++, 15.14.2
префиксный оператор декремента --, 15.15.2
префиксный оператор инкремента ++, 15.15.1
оператор остатка %, 15.17.3
операторы сдвига, 15.19
битовые и логические операторы, 15.22
постоянные выражения, 15.28
битовый оператор дополнения ~, 15.15.5
постоянные выражения, 15.28
целочисленные операции, 4.2.2
унарное числовое повышение, 5.6.1
блоки, 14.2, 16.2.2
блоки, 16.2.2
виды переменных, 4.12.3
объявления локальных классов, 14.3
область видимости объявления, 6.3
блоки и операторы, 14
постоянные выражения булевого типа, 16.1.1
операторы булевой равенства == и !=, 15.21.2
тип boolean и булевы значения, 4.2.5
булевы литералы, 3.10.3
тип boolean и булевы значения, 4.2.5
постоянные выражения, 15.28
идентификаторы, 3.8
лексические литералы, 15.8.1
логические операторы boolean &, ^ и |, 15.22.2
тип boolean и булевы значения, 4.2.5
операция логического «И» &&, 15.23
операция логического «ИЛИ» ||, 15.24
тип boolean и булевы значения, 4.2.5
булевы литералы, 3.10.3
лексические литералы, 15.8.1
преобразование boxing, 5.1.7
преобразование присваивания, 5.2
тип boolean и булевы значения, 4.2.5
преобразование приведения типа, 5.5
литералы классов, 15.8.2
условный оператор ? :, 15.25, 15.25
создание новых экземпляров классов, 12.5
операции с плавающей точкой, 4.2.4
вывод неразрешённых аргументов типа, 15.12.2.8
операции с целыми числами, 4.2.2
преобразование вызова метода, 5.3
нормальное и прерывистое завершение вычисления, 15.6
объекты, 4.3.1
постфиксный оператор декремента --, 15.14.3
постфиксный оператор инкремента ++, 15.14.2
префиксный оператор декремента --, 15.15.2
префиксный оператор инкремента ++, 15.15.1
оператор break, 14.15
операторы break, continue, return и throw, 16.2.13
меченые операторы, 14.7
имена и идентификаторы, 6.2, 6.2
нормальное и прерывистое завершение операторов, 14.1
операторы break, continue, return и throw, 16.2.13

C

преобразование захвата, 5.1.10
выражения доступа к массивам, 15.13
операторы присваивания, 15.26
выражения приведения типов, 15.16
условный оператор ? :, 15.25
доступ к полям с использованием первичного выражения, 15.11.1
вывод типов аргументов на основе фактических аргументов, 15.12.2.7
вывод неразрешенных типов аргументов, 15.12.2.8
типы пересечения, 4.9
тип результата метода и типы исключений, 15.12.2.6, 15.12.2.6
параметризованные типы, 4.5
квалифицированные имена выражений, 6.5.6.2, 6.5.6.2, 6.5.6.2, 6.5.6.2, 6.5.6.2
простые имена выражений, 6.5.6.1
подтипирование между типами классов и интерфейсов, 4.10.2
выражения приведения типов, 15.16
типы массивов, 10.1
преобразование приведения, 5.5
шаг 3 компиляции: подходит ли выбранный метод?, 15.12.3
константные выражения, 15.28
выражения и проверки во время выполнения, 15.5, 15.5
операции с плавающей точкой, 4.2.4
порядок happens-before, 17.4.5
операции с целыми числами, 4.2.2
нормальное и внезапное завершение оценки, 15.6
объекты, 4.3.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
оператор сравнения типов instanceof, 15.20.2
унарные операторы, 15.15
преобразование приведения, 5.5
выражения приведения типов, 15.16
выражения и проверки во время выполнения, 15.5, 15.5
порядок happens-before, 17.4.5
объекты, 4.3.1
операторы равенства ссылок == и !=, 15.21.3
преобразования приведения к примитивным типам, 5.5
преобразования приведения к ссылкам, 5.5
причины возникновения исключений, 11.1.2
символьные литералы, 3.10.4
комментарии, 3.7
константные выражения, 15.28
последовательности экранирования для символьных и строковых литералов, 3.10.6
лексические литералы, 15.8.1
Unicode, 3.1
проверка доступности типа и метода, 15.12.4.3
проверки приведения с проверкой и без проверки, 5.5.2
переменные ссылочного типа, 4.12.2
проверки приведения с проверкой во время выполнения, 5.5.3
проверки приведения с проверкой и без проверки, 5.5.2
выбор конструктора и его аргументов, 15.9.3
выбор наиболее специфичного метода, 15.12.2.5
шаг 2 компиляции: определение сигнатуры метода, 15.12.2
перегрузка методов и конструкторов, 13.4.23
фаза 1: идентификация методов с совпадающей арностью, применимых через подтипирование, 15.12.2.2
фаза 2: идентификация методов с совпадающей арностью, применимых через преобразование вызова метода, 15.12.2.3
фаза 3: идентификация применимых методов с переменной арностью, 15.12.2.4
тело класса и объявления членов, 8.1.6, 13.4.6
члены класса, 8.2
область видимости объявления, 6.3
что такое и не является бинарной совместимостью, 13.2
объявления классов, 8.1
объявления, 6.1
типы, классы и интерфейсы, 4.12.6
выражения создания экземпляров класса, 15.9
абстрактные классы, 8.1.1.1
объявления конструкторов, 8.8, 8.8
перегрузка конструкторов, 8.8.8
создание новых экземпляров классов, 12.5
анализ исключений выражений, 11.2.1
форма двоичного файла, 13.1
начальные значения переменных, 4.12.5, 4.12.5
инициализаторы экземпляров, 8.6
виды переменных, 4.12.3
преобразование вызова метода, 5.3
имена и идентификаторы, 6.2
нормальное и внезапное завершение оценки, 15.6
объекты, 4.3.1, 4.3.1
оператор возврата, 14.17
обработка исключений во время выполнения, 11.3
преобразование строк, 5.1.11
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
типы, классы и интерфейсы, 4.12.6
литералы классов, 15.8.2
обычные аннотации, 9.7.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
загрузка класса
причины исключений, 11.1.2
литералы класса, 15.8.2
загрузка класса для тестирования, 12.1.1
суперклассы и подклассы, 8.1.4
суперинтерфейсы и подинтерфейсы, 9.1.3
члены класса
объявления, 6.1
члены и конструкторы параметризованных типов, 4.5.2
модификаторы класса
аннотации, 9.7
объявления анонимных классов, 15.9.5
объявления локальных классов, 14.3
приведение типов ссылок, 5.5.1, 5.5.1, 5.5.1
объявления типов верхнего уровня, 7.6
класс Object
проверка приведений во время выполнения, 5.5.3, 5.5.3
объекты класса для массивов
типы, классы и интерфейсы, 4.12.6
класс String
лексические литералы, 15.8.1
литералы, 3.10
объекты, 4.3.1
строковые литералы, 3.10.5, 3.10.5
параметры типа класса
классы
пересечения типов, 4.9
объявления локальных классов, 14.3
члены пакета, 7.1
квалифицированные имена выражений, 6.5.6.2
переклассификация контекстуально неоднозначных имён, 6.5.2
типы ссылок и значения, 4.3
объявления типов верхнего уровня, 7.6
комментарии
элементы ввода и токены, 3.5, 3.5
лексическая грамматика, 2.2
лексические преобразования, 3.2
разделители строк, 3.4
unicode, 3.1
единицы компиляции
определение доступности, 6.6.1
поддержка пакетов хостом, 7.2
определение потенциально применимых методов, 15.12.2.1
наблюдаемость пакета, 7.4.3
члены пакета, 7.1
переклассификация контекстуально неоднозначных имён, 6.5.2, 6.5.2
область видимости объявления, 6.3
затенение, 6.4.1
синтаксическая грамматика, 2.3
проверка исключений во время компиляции
проверка исключений, 11.2.3
этап компиляции 1: определение класса или интерфейса для поиска
класс Object, 4.3.2
определение потенциально применимых методов, 15.12.2.1
необработанные типы, 4.8
этап компиляции 2: определение сигнатуры метода
выбор конструктора и его аргументов, 15.9.3, 15.9.3
этап компиляции 1: определение класса или интерфейса для поиска, 15.12.1
константы перечисления, 8.9.1
перегрузка, 8.4.9
что такое и не является бинарной совместимостью, 13.2
этап компиляции 3: выбранный метод подходит?
проверка доступности типа и метода, 15.12.4.3
выбор самого конкретного метода, 15.12.2.5
создание кадра, синхронизация, передача управления, 15.12.4.5
форма двоичного файла, 13.1
нахождение метода для вызова, 15.12.4.4, 15.12.4.4
выражения вызова метода, 15.12
операторы сложного присваивания
вычисление левого операнда в первую очередь, 15.7.1
вычисление целевой ссылки (при необходимости)
условный оператор ? :
двоиковое численное продвижение, 5.6.2
булевый тип и булевы значения, 4.2.5, 4.2.5
условный оператор ? :, 16.1.5, 16.1.6
константные выражения, 15.28
операции с плавающей точкой, 4.2.4
целочисленные операции, 4.2.2
обычные аннотации, 9.7.1
объекты, 4.3.1
Оператор условной конъюнкции &&, 15.23, 16.1.2
Булевый тип и булевы значения, 4.2.5
Оператор условной конъюнкции &&, 16.1.2
Постоянные выражения, 15.28
Оператор условного дизъюнкции ||, 15.24, 16.1.3
Булевый тип и булевы значения, 4.2.5
Оператор условного дизъюнкции ||, 16.1.3
Постоянные выражения, 15.28
Постоянные выражения, 15.28
Преобразование присваивания, 5.2
Булевые постоянные выражения, 16.1.1
Класс String, 4.3.3
Условный оператор ? :, 15.25, 15.25
Создание новых экземпляров класса, 12.5
Подробная процедура инициализации, 12.4.2
Поля final и константы, 13.4.9
Переменные final, 4.12.4
Выражения fp-strict, 15.4
Инициализация полей в интерфейсах, 9.3.1, 9.3.1
Инициализаторы для переменных класса, 8.3.2.1
Нормальные аннотации, 9.7.1
Объекты, 4.3.1
Оператор конкатенации строк +, 15.18.1
Строковые литералы, 3.10.5
Последующее изменение полей final, 17.5.3
Оператор switch, 14.11
Недостижимые операторы, 14.21, 14.21, 14.21
Тело конструктора, 8.8.7
Объявления конструкторов, 8.8
Определенное присваивание, конструкторы и инициализаторы экземпляров, 16.9
Начальные значения переменных, 4.12.5
Вложенные классы и окружающие экземпляры, 8.1.3
Типы переменных, 4.12.3
this, 15.8.3
Объявления конструкторов, 8.8
Тело класса и объявления членов, 8.1.6
Создание новых экземпляров класса, 12.5
Объявления, 6.1
Поля final, 8.3.1.2
Необработанные типы, 4.8
Оператор возврата, 14.17, 14.17
Вычисление выражений создания экземпляров класса во время выполнения, 15.9.4
Имена простых выражений, 6.5.6.1
Модификаторы конструктора, 8.8.3
Аннотации, 9.7
Перегрузка конструкторов, 8.8.8
Подпись конструктора, 8.8.2
Форма двоичного файла, 13.1
Конструктор выводит исключения, 8.8.5
Проверка исключений на этапе компиляции, 11.2
Синтаксическая классификация имени в контексте, 6.5.1
Оператор throw, 14.18
Контекстно-свободные грамматики, 2.1
Единицы компиляции, 7.3
Оператор continue, 14.16
Операторы break, continue, return и throw, 16.2.13
Операторы с метками, 14.7
Имена и идентификаторы, 6.2, 6.2
Нормальное и прерывистое завершение операторов, 14.1
Преобразования и продвижения, 5
Создание фрейма, синхронизация, передача управления, 15.12.4.5
Создание новых экземпляров класса, 12.5
Объявления конструкторов, 8.8
Инициализация полей, 8.3.2
Инициализаторы экземпляров, 8.6
Вычисление выражений создания экземпляров класса во время выполнения, 15.9.4
Статические поля, 8.3.1.1
Оператор конкатенации строк +, 15.18.1
Когда происходит инициализация, 12.4.1

Д

объявления, 6.1
имена и идентификаторы, 6.2
конструктор по умолчанию, 8.8.9
объявления методов и конструкторов, 13.4.12
значения по умолчанию для элементов типа аннотации, 9.6.2
определенное присваивание, 16
операторы присваивания, 15.26
постоянные переменные, 4.12.4, 4.12.4
начальные значения переменных, 4.12.5
вложенные классы и окружающие экземпляры, 8.1.3
виды переменных, 4.12.3
выражения в скобках, 15.8.5
определенное присваивание и анонимные классы, 16.6
определенное присваивание и инициализаторы массивов, 16.4
определенное присваивание и константы перечислений, 16.5
определенное присваивание и выражения, 16.1
определенное присваивание и типы членов, 16.7
определенное присваивание и параметры, 16.3
определенное присваивание и операторы, 16.2
определенное присваивание и статические инициализаторы, 16.8
определенное присваивание и константы перечислений, 16.5
постоянные поля, 8.3.1.2
определенное присваивание, конструкторы и инициализаторы экземпляров, 16.9
постоянные поля, 8.3.1.2
подробная процедура инициализации, 12.4.2
постоянные поля и константы, 13.4.9
форма двоичного кода, 13.1
инициализация полей, 8.3.2
инициализация полей в интерфейсах, 9.3.1, 9.3.1
инициализаторы переменных класса, 8.3.2.1
простые имена выражений, 6.5.6.1
статические инициализаторы, 8.7
оператор throw, 14.18
время инициализации, 12.4.1
подробности защищенного доступа, 6.6.2
определение доступности, 6.6.1
определение доступности, 6.6.1
определение окружающих экземпляров, 15.9.2
вложенные классы и окружающие экземпляры, 8.1.3
определение класса, который создается, 15.9.1
перечисления, 8.9
определение значения имени, 6.5
члены класса, 8.2
члены интерфейса, 9.2
имена и идентификаторы, 6.2
скрытие, 6.4.2
оператор деления /, 15.17.2
составные операторы присваивания, 15.26.2
операнды вычисляются до операции, 15.7.2
целочисленные операции, 4.2.2
нормальное и прерывистое завершение вычисления, 15.6
оператор do, 14.13
булевый тип и булевые значения, 4.2.5
операторы do, 16.2.11
операторы do, 16.2.11

Е

пустое оператор, 14.6
пустые операторы, 16.2.1
пустые операторы, 16.2.1
расширенный оператор for, 14.14.2
операторы for, 16.2.12
область действия объявления, 6.3
объявления тела перечисления, 8.9.2
конструктор по умолчанию, 8.8.9
постоянные перечисления, 8.9.1
определенное присваивание и постоянные перечисления, 16.5
определенное присваивание и статические инициализаторы, 16.8
оператор switch, 14.11
перечисления, 8.9
абстрактные классы, 8.1.1.1
абстрактные методы, 8.4.3.1
элементы типа аннотации, 9.6.1
аннотации, 9.7
объявления классов, 8.1
тело конструктора, 8.8.7
модификаторы конструктора, 8.8.3
объявления, 6.1
определение класса, который подлежит экземпляризации, 15.9.1, 15.9.1
перечисления, 8.9
оператор switch, 14.11
операторы равенства, 15.21
константные выражения, 15.28
стирание
преобразование присваивания, 5.2
проверенные и непроверенные преобразования типов, 5.5.2
проверенные преобразования типов во время выполнения, 5.5.3
выбор наиболее специфичного метода, 15.12.2.5
параметры типа класса, 13.4.5
этап 3 компиляции: является ли выбранный метод подходящим?, 15.12.3
подпись конструктора, 8.8.2
создание стека, синхронизация, передача управления, 15.12.4.5
оценка аргументов, 15.12.4.2
объявления полей, 13.4.8
форма бинарного представления, 13.1, 13.1, 13.1, 13.1
выведение параметров типа на основе фактических аргументов, 15.12.2.7
формальные параметры методов и конструкторов, 13.4.14
параметры типа методов и конструкторов, 13.4.13
преобразование вызова метода, 5.3
тип результата и типы исключений метода, 15.12.2.6, 15.12.2.6
тип результата метода, 13.4.15
подпись метода, 8.4.2
этап 3: идентификация методов с переменным числом аргументов, 15.12.2.4
сырые типы, 4.8
требования при переопределении и скрытии, 8.4.8.3
переменные типа, 4.4
последовательности escape для символьных и строковых литералов, 3.10.6
символьные литералы, 3.10.4
строковые литералы, 3.10.5
оценка аргументов, 15.12.4.2
формальные параметры, 8.4.1
переменные ссылочного типа, 4.12.2
оценка левого операнда первой, 15.7.1
оценка операндов перед операцией, 15.7.2
порядок оценки, 15.7
порядок оценки для других выражений, 15.7.5
оценка учитывает скобки и приоритет, 15.7.3
оценка, обозначение и результат, 15.1
оператор assert, 14.10
эволюция типов аннотаций, 13.5.7
эволюция классов, 13.4
эволюция перечислений, 13.4.26
эволюция интерфейсов, 13.5
эволюция пакетов, 13.3
примерные программы, 1.2
анализ исключений выражений, 11.2.1
выражения создания экземпляров класса, 15.9
проверка исключений во время компиляции, 11.2
тип результата метода и типы исключений, 15.12.2.6
анализ исключений операторов, 11.2.2
проверка исключений во время компиляции, 11.2
явные вызовы конструкторов, 8.8.7.1
исключения метода, 8.4.6
оператор throw, 14.18
оператор try, 14.20
проверка исключений, 11.2.3
проверка исключений во время компиляции, 11.2
инициализация полей, 8.3.2
инициализаторы экземпляров, 8.6
метод throws, 8.4.6
статические инициализаторы, 8.7
операция throw, 14.18, 14.18
оператор try, 14.20
Исключения, 11
операции с плавающей точкой, 4.2.4
операции с целыми числами, 4.2.2
нормальное и прерванное завершение операторов, 14.1
операция throw, 14.18
выполнение, 12
выполнение объявлений локальных переменных, 14.4.2
выполнение try-catch, 14.20.1
оператор try, 14.20
выполнение try-finally и try-catch-finally, 14.20.2
оператор try, 14.20
выполнения, 17.4.6
корректные выполнения, 17.4.7
выполнения и требования к причинно-следственной связи, 17.4.8
явные вызовы конструкторов, 8.8.7.1
анонимные конструкторы, 15.9.5.1, 15.9.5.1
тело конструктора, 8.8.7
создание новых экземпляров классов, 12.5
определённая инициализация, конструкторы и инициализаторы экземпляров, 16.9, 16.9
анализ исключений операторов, 11.2.2
форма двоичного файла, 13.1
инициализаторы экземпляров, 8.6
преобразование вызова метода, 5.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
выражение, 15.27
имена выражений, 15.14.1
выражения-операторы, 14.8, 16.2.6
этап компиляции 3: подходит ли выбранный метод?, 15.12.3
вычисление, обозначение и результат, 15.1
выражения-операторы, 16.2.6
инициализация оператора for, 14.14.1.1
выражения, 15
выражения и проверки во время выполнения, 15.5
расширенный оператор try-with-resources, 14.20.3.2

F

объявления полей (константы), 9.3
аннотации, 9.7
инициализаторы массивов, 10.6
переменные массива, 10.2, 10.2
объявления, 6.1
тело интерфейса и объявления членов, 9.1.4
виды переменных, 4.12.3
затеняющие объявления, 6.4.2
перекрывающие объявления, 6.4.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
выражения доступа к полям, 15.11
операторы присваивания, 15.26
имена и идентификаторы, 6.2
нормальное и внезапное завершение оценки, 15.6
объекты, 4.3.1
оператор простого присваивания =, 15.26.1
статические инициализаторы, 8.7
доступ к полям с помощью первичного выражения, 15.11.1
объявления полей, 8.3, 13.4.8, 13.5.5
инициализаторы массивов, 10.6
переменные массива, 10.2, 10.2
тело класса и объявления членов, 8.1.6
создание новых экземпляров классов, 12.5
объявления, 6.1
объявления полей, 13.5.5
затеняющие объявления, 6.4.2
сырые типы, 4.8
переклассификация контекстуально неоднозначных имен, 6.5.2
разрешение символических ссылок, 12.3.3
перекрывающие объявления, 6.4.1
простые имена выражений, 6.5.6.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
модификаторы полей, 8.3.1
аннотации, 9.7
конечные классы, 8.1.1.2, 13.4.2
объявления анонимных классов, 15.9.5
конечные методы, 8.4.3.3
суперклассы и подклассы, 8.1.4
верификация двоичного представления, 12.3.1
семантика конечных полей, 17.5
модель памяти, 17.4
конечные поля, 8.3.1.2
конечные поля и константы, 13.4.9
подробная процедура инициализации, 12.4.2
объявления полей, 13.5.5
конечные переменные, 4.12.4
форма двоичного файла, 13.1, 13.1
инициализация полей в интерфейсах, 9.3.1
инициализаторы переменных класса, 8.3.2.1
верификация двоичного представления, 12.3.1
конечные методы, 8.4.3.3, 13.4.17
верификация двоичного представления, 12.3.1
конечные переменные, 4.12.4
константные выражения, 15.28, 15.28
объявления тела перечисления, 8.9.2
конечные поля, 8.3.1.2, 8.3.1.2
конечные поля и константы, 13.4.9
форма двоичного файла, 13.1
вложенные классы и окружающие экземпляры, 8.1.3, 8.1.3
деклараторы локальных переменных и типы, 14.4.1
сужение преобразования ссылок, 5.1.6
try-with-resources, 14.20.3
когда происходит инициализация, 12.4.1
финализация экземпляров классов, 12.6
класс Object, 4.3.2
порядок happens-before, 17.4.5
виды переменных, 4.12.3
выгрузка классов и интерфейсов, 12.7
вещественные литералы, 3.10.2
константные выражения, 15.28
лексические литералы, 15.8.1
вещественные операции, 4.2.4
аддитивные операторы (+ и -) для числовых типов, 15.18.2
оператор деления /, 15.17.2
оператор умножения *, 15.17.1
сужение примитивного преобразования, 5.1.3
расширение примитивного преобразования, 5.1.2
вещественные типы, форматы и значения, 4.2.3
выражения преобразования типов, 15.16
объявления полей, 8.3
литералы с плавающей точкой, 3.10.2
формальные параметры, 8.4.1
выражения fp-strict, 15.4
лексические литералы, 15.8.1, 15.8.1
объявления и типы локальных переменных, 14.4.1
преобразование примитивного типа сужения, 5.1.3, 5.1.3
выражения в скобках, 15.8.5
оператор возврата, 14.17
унарный минус-оператор -, 15.15.4
параметры набора значений с плавающей точкой, 4.2.3
типы, форматы и значения с плавающей точкой, 4.2.3, 4.2.3, 4.2.3
оператор цикла for, 14.14
переменные массивов, 10.2
тип boolean и значения boolean, 4.2.5
шаг 3 компиляции: подходит ли выбранный метод?, 15.12.3
объявления, 6.1
начальные значения переменных, 4.12.5
виды переменных, 4.12.3
операторы объявления локальных переменных, 14.4
операторы for, 16.2.12
запрещенные преобразования, 5.1.12
форма двоичного файла, 13.1
проверка доступности типа и метода, 15.12.4.3
шаг 3 компиляции: подходит ли выбранный метод?, 15.12.3
постоянные переменные, 4.12.4
загрузка классов и интерфейсов, 12.2
поиск вызываемого метода, 15.12.4.4
разрешение символических ссылок, 12.3.3
объявления типов верхнего уровня, 7.6
когда типы ссылок одинаковы, 4.3.4, 4.3.4
формальные параметры, 8.4.1
аннотации, 9.7
переменные массивов, 10.2
шаг 3 компиляции: подходит ли выбранный метод?, 15.12.3
объявления, 6.1
определённое назначение и параметры, 16.3
оценка аргументов, 15.12.4.2
формальные параметры и параметры типа, 8.8.1
начальные значения переменных, 4.12.5
вызов test.main, 12.1.4
виды переменных, 4.12.3
формальные параметры методов и конструкторов, 13.4.14
объявления методов, 8.4
переквалификация контекстно неоднозначных имён, 6.5.2
область видимости объявления, 6.3
перекрытие и затемнение, 6.4
общие переменные, 17.4.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
переменные ссылочного типа, 4.12.2
формальные параметры и параметры типа, 8.8.1
объявления, 6.1, 6.1
определённое назначение и параметры, 16.3
начальные значения переменных, 4.12.5
виды переменных, 4.12.3
переквалификация контекстно неоднозначных имён, 6.5.2
область видимости объявления, 6.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
выражения fp-strict, 15.4
бинарные операторы (+ и -) для числовых типов, 15.18.2
выражения преобразования типов, 15.16
постоянные выражения, 15.28
оператор деления /, 15.17.2
типы, форматы и значения с плавающей точкой, 4.2.3
формальные параметры, 8.4.1
оператор умножения *, 15.17.1
обычные аннотации, 9.7.1
оператор возврата, 14.17
классы strictfp, 8.1.1.3
интерфейсы strictfp, 9.1.1.2
методы strictfp, 8.4.3.5
преобразование набора значений, 5.1.13, 5.1.13
преобразование примитивного типа расширения, 5.1.2
полные имена и канонические имена, 6.7
единицы компиляции, 7.3
форма двоичного файла, 13.1, 13.1
объявления импорта, 7.5, 7.5
объявления локальных классов, 14.3
именованные пакеты, 7.4.1
нотация, 1.3
члены пакета, 7.1
объявления единственного статического импорта, 7.5.3
объявления единственного импорта типа, 7.5.1
объявления статического импорта по требованию, 7.5.4
объявления типов верхнего уровня, 7.6
объявления импорта типов по требованию, 7.5.2

Г

обобщенные классы и параметры типа, 8.1.2
преобразование захвата, 5.1.10
выражения создания экземпляров классов, 15.9
объявления, 6.1
форма двоичного представления, 13.1
обобщенные конструкторы, 8.8.4
обобщенные методы, 8.4.4
параметризованные типы, 4.5
область действия объявления, 6.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
переменные типа, 4.4
типы, классы и интерфейсы, 4.12.6
обобщенные конструкторы, 8.8.4
выражения создания экземпляров классов, 15.9
форма двоичного представления, 13.1
область действия объявления, 6.3
переменные типа, 4.4
обобщенные интерфейсы и параметры типа, 9.1.2
преобразование захвата, 5.1.10
объявления, 6.1
форма двоичного представления, 13.1
параметризованные типы, 4.5
область действия объявления, 6.3
суперинтерфейсы, 8.1.5
переменные типа, 4.4
типы, классы и интерфейсы, 4.12.6
обобщенные методы, 8.4.4
объявления абстрактных методов, 9.4
этап компиляции 2: определение сигнатуры метода, 15.12.2
объявления, 6.1
форма двоичного представления, 13.1
объявления методов, 8.4
область действия объявления, 6.3
стирание типов, 4.6
переменные типа, 4.4
нотация грамматики, 2.4
грамматики, 2

Н

порядок «происходит до», 17.4.5
выполнения, 17.4.6
выполнения и требования к причинно-следственной связи, 17.4.8
финализация экземпляров классов, 12.6
скрытие (методами класса), 8.4.8.2
наследование, переопределение и скрытие, 8.4.8
затемнение, 6.4.2
затенение, 6.4.1
поддержка пакетов хостом, 7.2
объявления типов верхнего уровня, 7.6

I

идентификаторы, 3.8
объявления, 6.1
ключевые слова, 3.9
лексическая грамматика, 2.2
определение потенциально применимых методов, 15.12.2.1
шаг 2 времени компиляции: определение сигнатуры метода, 15.12.2
этап 1: определение методов с совпадающей арностью, применимых с помощью подтипизации, 15.12.2.2
этап 2: определение методов с совпадающей арностью, применимых с помощью преобразования вызова метода, 15.12.2.3
этап 3: определение применимых методов переменной арности, 15.12.2.4
преобразование тождества, 5.1.1
преобразование присваивания, 5.2
тип boolean и значения boolean, 4.2.5
преобразование автоупаковки, 5.1.7
преобразование захвата, 5.1.10
преобразование приведения типов, 5.5
преобразование вызова метода, 5.3
арифметические продвижения, 5.6
унарное арифметическое продвижение, 5.6.1
оператор if, 14.9
тип boolean и значения boolean, 4.2.5
операторы if, 16.2.7
оператор if-then, 14.9.1
операторы if, 16.2.7
оператор if-then-else, 14.9.2
операторы if, 16.2.7
реализация финализации, 12.6.1
декларации импорта, 7.5
единицы компиляции, 7.3
часть инкремента оператора for, 16.2.12.2
вывод типов аргументов на основе фактических аргументов, 15.12.2.7
выбор наиболее специфичного метода, 15.12.2.5, 15.12.2.5, 15.12.2.5
шаг 2 времени компиляции: определение сигнатуры метода, 15.12.2
условный оператор ? :, 15.25
конструкторы дженериков, 8.8.4
методы дженериков, 8.4.4
вывод неразрешенных аргументов типа, 15.12.2.8, 15.12.2.8, 15.12.2.8
пересекающиеся типы, 4.9
этап 1: определение методов с совпадающей арностью, применимых с помощью подтипизации, 15.12.2.2
этап 2: определение методов с совпадающей арностью, применимых с помощью преобразования вызова метода, 15.12.2.3
этап 3: определение применимых методов переменной арности, 15.12.2.4
оператор try, 14.20
вывод неразрешенных аргументов типа, 15.12.2.8
наследование и переопределение, 9.4.1
декларации абстрактных методов, 9.4
проверка исключений во время компиляции, 11.2
члены интерфейса, 9.2
наследование, переопределение и скрытие, 8.4.8
класс Object, 4.3.2
наследование методов с сигнатурами, эквивалентными переопределению, 8.4.8.4, 9.4.1.3
переменные ссылочного типа, 4.12.2
начальные значения переменных, 4.12.5
инициализаторы массивов, 10.6
создание новых экземпляров классов, 12.5
поля final и константы, 13.4.9
инициализация полей в интерфейсах, 9.3.1
инициализаторы для переменных класса, 8.3.2.1
виды переменных, 4.12.3, 4.12.3, 4.12.3
подготовка типа класса или интерфейса, 12.3.2
вычисление выражений создания массивов во время выполнения, 15.10.1
вычисление выражений создания экземпляров классов во время выполнения, 15.9.4
переменные, 4.12
инициализация классов и интерфейсов, 12.4
причины возникновения исключений, 11.1.2
инициализировать тест: выполнить инициализаторы, 12.1.3
объекты, 4.3.1
подготовка типа класса или интерфейса, 12.3.2
обработка исключения во время выполнения, 11.3
статические поля, 8.3.1.1
инициализация полей, 8.3.2
проверка исключений, 11.2.3
статические инициализаторы, 8.7
инициализация полей в интерфейсах, 9.3.1
последовательная процедура инициализации, 12.4.2
поля final и константы, 13.4.9
инициализаторы для переменных класса, 8.3.2.1
инициализация оператора for, 14.14.1.1
часть инициализации цикла for, 16.2.12.1
инициализация теста: выполнение инициализаторов, 12.1.3
инициализаторы для переменных класса, 8.3.2.1
определенное присваивание и статические инициализаторы, 16.8
подробная процедура инициализации, 12.4.2
поля final и константы, 13.4.9
инициализация полей в интерфейсах, 9.3.1
имена простых выражений, 6.5.6.1
инициализаторы для переменных экземпляров, 8.3.2.2
определенное присваивание, конструкторы и инициализаторы экземпляров, 16.9
имена простых выражений, 6.5.6.1
вложенные классы и окружающие экземпляры, 8.1.3
анонимные объявления классов, 15.9.5
этап компиляции 3: подходит ли выбранный метод?, 15.12.3
вычисление целевой ссылки (при необходимости), 15.12.4.1, 15.12.4.1
определение окружающих экземпляров, 15.9.2, 15.9.2, 15.9.2
определение класса, который создается, 15.9.1, 15.9.1
явные вызовы конструкторов, 8.8.7.1
форма двоичного представления, 13.1
объявления локальных классов, 14.3
квалифицированное this, 15.8.4
когда происходит инициализация, 12.4.1
элементы ввода и токены, 3.5
лексическая грамматика, 2.2, 2.2
лексические преобразования, 3.2
unicode, 3.1
создание экземпляров
абстрактные классы, 8.1.1.1
объявления конструкторов, 8.8, 8.8, 8.8
перегрузка конструкторов, 8.8.8
создание новых экземпляров классов, 12.5
анализ исключений выражений, 11.2.1
форма двоичного представления, 13.1
начальные значения переменных, 4.12.5, 4.12.5
инициализация полей, 8.3.2
инициализаторы экземпляров, 8.6, 8.6
виды переменных, 4.12.3
преобразование вызова метода, 5.3
имена и идентификаторы, 6.2
нормальное и прерывистое завершение оценки, 15.6
объекты, 4.3.1, 4.3.1
оператор return, 14.17
вычисление создания экземпляра класса во время выполнения, 15.9.4
обработка исключения во время выполнения, 11.3
статические поля, 8.3.1.1
оператор конкатенации строк +, 15.18.1
преобразование строк, 5.1.11
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
типы, классы и интерфейсы, 4.12.6
когда происходит инициализация, 12.4.1
инициализаторы экземпляров, 8.6
тело класса и объявления членов, 8.1.6
определенное присваивание, конструкторы и инициализаторы экземпляров, 16.9
оператор return, 14.17
имена простых выражений, 6.5.6.1
оператор throw, 14.18
битовые операторы &, ^ и | для целых чисел, 15.22.1
двоичное числовое продвижение, 5.6.2
операции над целыми числами, 4.2.2
операторы сдвига, 15.19, 15.19
целочисленные литералы, 3.10.1
постоянные выражения, 15.28
лексические литералы, 15.8.1
операции над целыми числами, 4.2.2
целочисленные типы и значения, 4.2.1
литералы символов, 3.10.4
целочисленные литералы, 3.10.1
лексические литералы, 15.8.1, 15.8.1, 15.8.1
взаимодействие с моделью памяти, 12.6.2
взаимодействие ожиданий, уведомлений и прерываний, 17.2.4
тело интерфейса и объявления членов, 9.1.4
область действия объявления, 6.3
объявления интерфейсов, 9.1
объявления, 6.1
типы, классы и интерфейсы, 4.12.6
члены интерфейса, 9.2, 13.5.3
проверка доступности типа и метода, 15.12.4.3
объявления, 6.1
форма двоичного представления, 13.1, 13.1
методы интерфейса
абстрактные классы, 8.1.1.1
аннотации, 9.7
объявления, 6.1, 6.1
тело интерфейса и объявления членов, 9.1.4
сырые типы, 4.8
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
модификаторы интерфейса, 9.1.1
аннотации, 9.7
объявления статических типов членов, 8.5.1
объявления типов верхнего уровня, 7.6
параметры типа интерфейса, 13.5.4
интерфейсы, 9
выражения создания массивов, 15.10
члены пакета, 7.1
квалифицированные имена выражений, 6.5.6.2
переклассификация контекстуально неоднозначных имен, 6.5.2
типы ссылок и значения, 4.3
объявления типов верхнего уровня, 7.6
прерывания, 17.2.3
пересечения типов, 4.9
форма двоичного файла, 13.1, 13.1
переменные типа, 4.4
введение, 1
вызов test.main, 12.1.4
итерация оператора for, 14.14.1.2

J

запуск Java виртуальной машины, 12.1

K

ключевые слова, 3.9
идентификаторы, 3.8
лексическая грамматика, 2.2
примитивные типы и значения, 4.2
виды и причины исключений, 11.1
виды преобразований, 5.1
виды исключений, 11.1.1
проверка исключений во время компиляции, 11.2, 11.2
обобщенные классы и параметры типа, 8.1.2
метод throws, 8.4.6, 8.4.6
сужение примитивного преобразования, 5.1.3
оператор throw, 14.18
расширение примитивного преобразования, 5.1.2
виды типов и значений, 4.1
преобразование захвата, 5.1.10
лексические литералы, 15.8.1
литералы, 3.10
литерал null, 3.10.7
оператор throw, 14.18
виды переменных, 4.12.3

L

меченные операторы, 14.7, 16.2.5
оператор break, 14.15
оператор continue, 14.16
меченные операторы, 14.7, 16.2.5
имена и идентификаторы, 6.2, 6.2
лексическая грамматика, 2.2
лексические литералы, 15.8.1
типы и значения, 4.1
лексическая структура, 3
лексическая грамматика, 2.2
лексические преобразования, 3.2
разделители строк, 3.4
литералы символов, 3.10.4
элементы и токены ввода, 3.5
лексические преобразования, 3.2
пробелы, 3.6
проверка ссылки: проверка, подготовка, (необязательно) разрешение, 12.1.2
связывание классов и интерфейсов, 12.3
причины исключений, 11.1.2
проверка доступности типа и метода, 15.12.4.3
проверка ссылки: проверка, подготовка, (необязательно) разрешение, 12.1.2
разрешение символических ссылок, 12.3.3
литералы, 3.10
лексическая грамматика, 2.2
лексические литералы, 15.8.1
тест загрузки класса, 12.1.1
загрузка классов и интерфейсов, 12.2
причины исключений, 11.1.2
литералы классов, 15.8.2
тест загрузки класса, 12.1.1
суперклассы и подклассы, 8.1.4
суперинтерфейсы и подинтерфейсы, 9.1.3
процесс загрузки, 12.2.1
операторы объявления локальных классов, 16.2.3
объявления локальных классов, 14.3
выражения создания экземпляров класса, 15.9
модификаторы класса, 8.1.1
определение окружающих экземпляров, 15.9.2, 15.9.2
явные вызовы конструкторов, 8.8.7.1
форма двоичного кода, 13.1
внутренние классы и окружающие экземпляры, 8.1.3
операторы объявления локальных классов, 16.2.3
переквалификация контекстуально неоднозначных имён, 6.5.2
затенение и затемнение, 6.4
операторы объявления локальных переменных, 14.4, 16.2.4
инициализаторы массивов, 10.6
объявления, 6.1
начальные значения переменных, 4.12.5
инициализация полей, 8.3.2
инициализация оператора for, 14.14.1.1
начальная часть оператора for, 16.2.12.1
виды переменных, 4.12.3
операторы объявления локальных переменных, 16.2.4
объекты, 4.3.1
переквалификация контекстуально неоднозначных имён, 6.5.2
область действия объявления, 6.3
затенение и затемнение, 6.4
разделяемые переменные, 17.4.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
деклараторы и типы локальных переменных, 14.4.1
аннотации, 9.7
переменные массивов, 10.2
найти метод для вызова, 15.12.4.4
переопределение (методами экземпляров), 8.4.8.1
логический оператор дополнения !, 15.15.6, 16.1.4
логический тип и значения, 4.2.5
константные выражения, 15.28
логический оператор дополнения !, 16.1.4

М

метки аннотаций, 9.7.2
значение имен выражений, 6.5.6
имена выражений, 15.14.1
имена и идентификаторы, 6.2
значение имён методов, 6.5.7
имена и идентификаторы, 6.2
значение имён пакетов, 6.5.3
имена и идентификаторы, 6.2
значение имён пакетов или типов, 6.5.4
значение имён типов, 6.5.5
имена и идентификаторы, 6.2
типы ссылок и значения, 4.3
объявления типов членов, 8.5, 9.5
тело класса и объявления членов, 8.1.6
выражения создания экземпляров класса, 15.9, 15.9
модификаторы класса, 8.1.1, 8.1.1
объявления, 6.1, 6.1, 6.1, 6.1
определённое назначение и типы членов, 16.7, 16.7
определение окружающих экземпляров, 15.9.2, 15.9.2
определение класса, который создаётся, 15.9.1, 15.9.1
явные вызовы конструкторов, 8.8.7.1
форма двоичного файла, 13.1, 13.1
вложенные классы и окружающие экземпляры, 8.1.3, 8.1.3
тело интерфейса и объявления членов, 9.1.4
модификаторы интерфейса, 9.1.1
объявления типов членов, 9.5
затеняние, 6.4.2, 6.4.2
квалифицированные имена типов, 6.5.5.2, 6.5.5.2
переклассификация контекстуально неоднозначных имён, 6.5.2, 6.5.2, 6.5.2, 6.5.2
типы ссылок и значения, 4.3, 4.3
затенение, 6.4.1, 6.4.1
объявления статического импорта по требованию, 7.5.4, 7.5.4
объявления импорта типов по требованию, 7.5.2, 7.5.2
члены и конструкторы параметризованных типов, 4.5.2
модель памяти, 17.4
взаимодействие с моделью памяти, 12.6.2
переменные volatile, 8.3.1.4
тело метода и конструктора, 13.4.22
объявления методов и конструкторов, 13.4.12
формальные параметры методов и конструкторов, 13.4.14
тип результата метода, 13.4.15
разрешение символических ссылок, 12.3.3
формальные параметры методов и конструкторов, 13.4.14
абстрактные методы, 13.5.6
перегрузка методов и конструкторов, 13.4.23
абстрактные методы, 13.5.6
исключения методов и конструкторов, 13.4.21
абстрактные методы, 13.5.6
параметры типа методов и конструкторов, 13.4.13
параметры типа класса, 13.4.5
тело метода, 8.4.7
тело конструктора, 8.8.7
объявления методов, 8.4
объявления методов, 8.4
тело класса и объявления членов, 8.1.6
объявления, 6.1
оценка, денотация и результат, 15.1
сырые типы, 4.8
оператор возврата, 14.17, 14.17, 14.17
простые имена выражений, 6.5.6.1
синтаксическая классификация имени по контексту, 6.5.1
преобразование вызова метода, 5.3
создание фрейма, синхронизация, передача управления, 15.12.4.5
формальные параметры, 8.4.1
вывод аргументов типов на основе фактических аргументов, 15.12.2.7
этап 2: определение подходящих методов с соответствующей арностью, применимых путём преобразования вызова метода, 15.12.2.3
выражения вызова методов, 15.12
безымянные конструкторы, 15.9.5.1, 15.9.5.1
вычисление целевой ссылки (при необходимости), 15.12.4.1
декларации конструкторов, 8.8
оценка, обозначение и результат, 15.1
анализ исключений выражений, 11.2.1
выражения и проверки во время выполнения, 15.5
формальные параметры, 8.4.1
порядок «происходит до», 17.4.5
скрытие (методами класса), 8.4.8.2
начальные значения переменных, 4.12.5
инициализация полей в интерфейсах, 9.3.1
инициализаторы для переменных класса, 8.3.2.1
инициализаторы для переменных экземпляра, 8.3.2.2
инициализаторы экземпляров, 8.6
виды переменных, 4.12.3
преобразование вызова метода, 5.3
имена и идентификаторы, 6.2
нормальное и внезапное завершение оценки, 15.6, 15.6
объекты, 4.3.1
перегрузка, 8.4.9
переопределение (методами экземпляров), 8.4.8.1
оператор возврата, 14.17
обработка исключения во время выполнения, 11.3
статические инициализаторы, 8.7
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1
this, 15.8.3
модификаторы метода, 8.4.3
абстрактные классы, 8.1.1.1
аннотации, 9.7
декларации методов, 8.4
объекты, 4.3.1
переопределение метода, 13.4.24
тип результата и типы исключений метода, 15.12.2.6
выбор конструктора и его аргументов, 15.9.3
анализ исключений выражений, 11.2.1, 11.2.1
анализ исключений операторов, 11.2.2
тип результата метода, 13.4.15
абстрактные методы, 13.5.6
тип возвращаемого значения метода, 8.4.5
абстрактные классы, 8.1.1.1
литералы классов, 15.8.2
декларации конструкторов, 8.8
наследование методов с подписывающими переопределения эквивалентности, 8.4.8.4
декларации методов, 8.4
требования при переопределении и скрытии, 8.4.8.3
стирание типов, 4.6
Подпись метода, 8.4.2
абстрактные классы, 8.1.1.1
декларации абстрактных методов, 9.4
абстрактные методы, 8.4.3.1
выбор самого специфичного метода, 15.12.2.5
Подпись конструктора, 8.8.2
форма двоичного, 13.1
скрытие (методами класса), 8.4.8.2
наследование методов с подписывающими переопределения эквивалентности, 8.4.8.4, 9.4.1.3
члены интерфейса, 9.2
декларации методов, 8.4
перегрузка, 9.4.2
переопределение (методами экземпляров), 8.4.8.1, 9.4.1.1
требования при переопределении и скрытии, 8.4.8.3
стирание типов, 4.6
исключения метода, 8.4.6
проверка исключений во время компиляции, 11.2
исключения конструктора, 8.8.5
наследование методов с подписывающими переопределения эквивалентности, 8.4.8.4
декларации методов, 8.4
синтаксическая классификация имени в зависимости от контекста, 6.5.1
оператор throw, 14.18
операция умножения *, 15.17.1
операторы умножения, 15.17
двоичное численное продвижение, 5.6.2
константные выражения, 15.28
операции с плавающей запятой, 4.2.4
целочисленные операции, 4.2.2

Н

классификация имен
управление доступом, 6.6
именованные пакеты, 7.4.1
аннотации, 9.7
имена, 6
имена и идентификаторы, 6.2
определение класса, который подлежит инстанцированию, 15.9.1, 15.9.1
декларации импорта, 7.5
декларации локального класса, 14.3
именованные пакеты, 7.4.1
затенение и скрытие, 6.4
преобразование сужения примитивного типа, 5.1.3
преобразование приведения типа, 5.5
операции с плавающей точкой, 4.2.4
преобразование сужения примитивного типа, 5.1.3
постфиксный оператор декремента --, 15.14.3
постфиксный оператор инкремента ++, 15.14.2
префиксный оператор декремента --, 15.15.2
префиксный оператор инкремента ++, 15.15.1
расширение и сужение примитивного преобразования, 5.1.4
преобразование сужения ссылочного типа, 5.1.6
преобразование приведения типа, 5.5
нативные методы, 8.4.3.4, 13.4.18
ключевое слово new
абстрактные классы, 8.1.1.1
декларации конструкторов, 8.8, 8.8
перегрузка конструкторов, 8.8.8
создание новых экземпляров класса, 12.5
анализ исключений выражений, 11.2.1
форма двоичного файла, 13.1
начальные значения переменных, 4.12.5, 4.12.5
инициализаторы экземпляров, 8.6
виды переменных, 4.12.3
преобразование вызова метода, 5.3
имена и идентификаторы, 6.2
нормальное и прерывистое завершение вычисления, 15.6
объекты, 4.3.1, 4.3.1
оператор возврата, 14.17
обработка исключения во время выполнения, 11.3
преобразование в String, 5.1.11
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
типы, классы и интерфейсы, 4.12.6
неатомарное обращение с double и long, 17.7
нормальное и прерывистое завершение вычисления, 15.6
причины возникновения исключений, 11.1.2
нормальное и прерывистое завершение операторов, 14.1, 14.1
обработка исключений во время выполнения, 11.3
нормальное и прерывистое завершение операторов, 14.1
тело метода, 8.4.7
нормальное и прерывистое завершение вычисления, 15.6
обработка исключений во время выполнения, 11.3
обычные аннотации, 9.7.1
нотация, 1.3
уведомление, 17.2.2
литерал null, 3.10.7
шаг компиляции 3: подходит ли выбранный метод?, 15.12.3
идентификаторы, 3.8
виды типов и значений, 4.1
лексические литералы, 15.8.1
арифметические преобразования, 5.6
операции с плавающей точкой, 4.2.4
операции с целыми числами, 4.2.2
операторы числового сравнения <, <=, >, и >=, 15.20.1
двоичное числовое преобразование, 5.6.2
операции с плавающей точкой, 4.2.4
типы, форматы и значения с плавающей точкой, 4.2.3
операции с целыми числами, 4.2.2
операторы числового равенства == и !=, 15.21.1
двоичное числовое преобразование, 5.6.2
операции с плавающей точкой, 4.2.4
типы, форматы и значения с плавающей точкой, 4.2.3
операции с целыми числами, 4.2.2

О

создание объекта
объявления конструкторов, 8.8
инициализация полей, 8.3.2
инициализаторы экземпляров, 8.6
вычисление в ходе выполнения выражений создания экземпляров класса, 15.9.4
статические поля, 8.3.1.1
оператор конкатенации строк +, 15.18.1
момент инициализации, 12.4.1
объекты, 4.3.1
проверка типов в ходе выполнения, 5.5.3, 5.5.3
строковые литералы, 3.10.5
скрытие, 6.4.2
меченые операторы, 14.7
затенение, 6.4.1
наблюдаемость пакета, 7.4.3
полные имена пакетов, 6.5.3.2
область видимости объявления, 6.3
наблюдаемое поведение и не завершающиеся выполнения, 17.4.9
действия, 17.4.2, 17.4.2
операторы, 3.12
элементы ввода и токены, 3.5
лексическая грамматика, 2.2
операторы ++ и --, 16.1.9
организация спецификации, 1.1
другие выражения, 16.1.10
другие выражения типа boolean, 16.1.7
разрешение перегрузки
выбор конструктора и его аргументов, 15.9.3, 15.9.3
этап компиляции 1: определение класса или интерфейса для поиска, 15.12.1
этап компиляции 2: определение сигнатуры метода, 15.12.2, 15.12.2, 15.12.2, 15.12.2, 15.12.2, 15.12.2, 15.12.2, 15.12.2
постоянные перечисления, 8.9.1
вывод типов аргументов на основе фактических аргументов, 15.12.2.7, 15.12.2.7, 15.12.2.7
перегрузка методов и конструкторов, 13.4.23
перегрузка, 8.4.9
этап 1: идентификация методов с совпадающим числом аргументов, применимых по подтипизации, 15.12.2.2, 15.12.2.2, 15.12.2.2
этап 2: идентификация методов с совпадающим числом аргументов, применимых по преобразованию вызова метода, 15.12.2.3, 15.12.2.3, 15.12.2.3
этап 3: идентификация методов с переменным числом аргументов, 15.12.2.4, 15.12.2.4
что такое бинарная совместимость и чем она не является, 13.2
перегрузка, 8.4.9, 9.4.2
перегрузка конструкторов, 8.8.8
переопределение (методами экземпляров), 8.4.8.1, 9.4.1.1
абстрактные классы, 8.1.1.1
финальные классы, 8.1.1.2
наследование, переопределение и скрытие, 8.4.8
поиск метода для вызова, 15.12.4.4

P

Декларации пакетов, 7.4
единицы компиляции, 7.3
декларации, 6.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
члены пакета, 7.1
пакеты, 7
параметризованные типы, 4.5
преобразование захвата, 5.1.10, 5.1.10
проверки приведения типов и проверки приведения типов без проверки, 5.5.2
литералы классов, 15.8.2
определение класса, который создаётся, 15.9.1, 15.9.1, 15.9.1, 15.9.1
декларации полей, 13.4.8
обобщённые классы и параметры типов, 8.1.2
обобщённые интерфейсы и параметры типов, 9.1.2
формальные параметры методов и конструкторов, 13.4.14
тип результата метода, 13.4.15
сырые типы, 4.8
приведение ссылочных типов, 5.5.1
ссылочные типы и значения, 4.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
стирание типов, 4.6
типы, классы и интерфейсы, 4.12.6
выражения в скобках, 15.8.5
константные выражения, 15.28
этап 1: определение подходящих методов с совпадающей арностью, применяемых по принципу подтипизации, 15.12.2.2
этап компиляции 2: определение сигнатуры метода, 15.12.2, 15.12.2
вывод аргументов типа на основе фактических аргументов, 15.12.2.7
этап 2: определение подходящих методов с совпадающей арностью, применяемых с помощью преобразования вызова метода, 15.12.2.3
этап компиляции 2: определение сигнатуры метода, 15.12.2, 15.12.2
вывод аргументов типа на основе фактических аргументов, 15.12.2.7
этап 1: определение подходящих методов с совпадающей арностью, применяемых по принципу подтипизации, 15.12.2.2
этап 3: определение применимых методов с переменной арностью, 15.12.2.4
этап компиляции 2: определение сигнатуры метода, 15.12.2, 15.12.2
вывод аргументов типа на основе фактических аргументов, 15.12.2.7
этап 2: определение подходящих методов с совпадающей арностью, применяемых с помощью преобразования вызова метода, 15.12.2.3
оператор постфиксного декремента --, 15.14.3
операции с плавающей точкой, 4.2.4, 4.2.4
целочисленные операции, 4.2.2, 4.2.2
нормальное и прерывистое завершение оценки, 15.6
операторы ++ и --, 16.1.9
переменные, 4.12
постфиксные выражения, 15.14
синтаксическая классификация имени в зависимости от контекста, 6.5.1
оператор постфиксного инкремента ++, 15.14.2
операции с плавающей точкой, 4.2.4, 4.2.4
целочисленные операции, 4.2.2, 4.2.2
нормальное и прерывистое завершение оценки, 15.6
операторы ++ и --, 16.1.9
переменные, 4.12
возможно применимые методы
этап компиляции 2: определение сигнатуры метода, 15.12.2
этап 1: определение подходящих методов с совпадающей арностью, применяемых по принципу подтипизации, 15.12.2.2
этап 2: определение подходящих методов с совпадающей арностью, применяемых с помощью преобразования вызова метода, 15.12.2.3
этап 3: определение применимых методов с переменной арностью, 15.12.2.4
предопределённые типы аннотаций, 9.6.3
префиксный оператор декремента --, 15.15.2
операции с плавающей точкой, 4.2.4, 4.2.4
целочисленные операции, 4.2.2, 4.2.2
нормальное и прерывистое завершение оценки, 15.6
операторы ++ и --, 16.1.9
переменные, 4.12
префиксный оператор инкремента ++, 15.15.1
операции с плавающей точкой, 4.2.4, 4.2.4
целочисленные операции, 4.2.2, 4.2.2
нормальное и прерывистое завершение оценки, 15.6
операторы ++ и --, 16.1.9
переменные, 4.12
подготовка типа класса или интерфейса, 12.3.2
виды переменных, 4.12.3
тест связи: проверка, подготовка, (необязательно) разрешение, 12.1.2
предотвращение создания экземпляра класса, 8.8.10
первичные выражения, 15.8
постфиксные выражения, 15.14
примитивные типы и значения, 4.2
литералы классов, 15.8.2
вычисление, обозначение и результат, 15.1
виды типов и значений, 4.1
литералы, 3.10
реализуемые типы, 4.7
преобразование распаковки, 5.1.8
переменные, 4.12
выход из программы, 12.8
программы и порядок программы, 17.4.3
порядок "happens-before", 17.4.5
порядок синхронизации, 17.4.4
публичные классы, 13.4.3
публичные интерфейсы, 13.5.1

Q

квалифицированный доступ к защищенному конструктору, 6.6.2.2
квалифицированные имена выражений, 6.5.6.2
контроль доступа, 6.6
константные выражения, 15.28
выражения доступа к полям, 15.11
объявления полей, 8.3
квалифицированные имена методов, 6.5.7.2
квалифицированные имена пакетов, 6.5.3.2
квалифицированные имена пакетов или типов, 6.5.4.2
квалифицированный this, 15.8.4
синтаксическая классификация имени в зависимости от контекста, 6.5.1
квалифицированные имена типов, 6.5.5.2
контроль доступа, 6.6

R

Необработанные типы, 4.8
Преобразование присваивания, 5.2
Преобразование вызова метода, 5.3
Реализуемые типы, 4.7
Преобразование без проверки, 5.1.9
Переменные ссылочного типа, 4.12.2
Чтение конечных полей во время создания, 17.5.2
Переклассификация контекстуально неоднозначных имён, 6.5.2
Операторы сравнения ссылок == и !=, 15.21.3
объекты, 4.3.1
Приведение типов ссылок, 5.5.1
Преобразование приведения, 5.5
Ссылочные типы и значения, 4.3
Литералы классов, 15.8.2
Определение класса, подлежащего созданию, 15.9.1
Вычисление, обозначение и результат, 15.1
Начальные значения переменных, 4.12.5
Виды типов и значений, 4.1
Переменные, 4.12
Ссылки, 1.5
Реализуемые типы, 4.7
@SafeVarargs, 9.6.3.7
Выражения создания массивов, 15.10
Инициализаторы массивов, 10.6
Выражения и проверки во время выполнения, 15.5, 15.5
Формальные параметры, 8.4.1
Оператор сравнения типов instanceof, 15.20.2
Операторы сравнения, 15.20
Постоянные выражения, 15.28
Связь с предопределёнными классами и интерфейсами, 1.4
Оператор остатка %, 15.17.3
Операции операндов до выполнения операции, 15.7.2
Операции с плавающей точкой, 4.2.4
Целочисленные операции, 4.2.2
Нормальное и прерывистое завершение вычисления, 15.6
Требования при переопределении, 9.4.1.2
Переменные ссылочного типа, 4.12.2
Требования при переопределении и скрытии, 8.4.8.3
Проверка исключений во время компиляции, 11.2
Исключения метода, 8.4.6
Требования при переопределении, 9.4.1.2, 9.4.1.2, 9.4.1.2
Переменные ссылочного типа, 4.12.2
Разрешение символьных ссылок, 12.3.3
Тест ссылки: проверка, подготовка, (по желанию) разрешение, 12.1.2
Ограничения на использование полей во время инициализации, 8.3.2.3
Время инициализации, 12.4.1, 12.4.1
Оператор возврата, 14.17
Операторы break, continue, return и throw, 16.2.13
Тело конструктора, 8.8.7
Инициализаторы экземпляров, 8.6
Тело метода, 8.4.7, 8.4.7
Нормальное и прерывистое завершение операторов, 14.1
Статические инициализаторы, 8.7
Вычисление обращения к массиву во время выполнения, 15.13.1
Порядок вычисления других выражений, 15.7.5
Вычисление выражений создания массивов во время выполнения, 15.10.1
Порядок вычисления других выражений, 15.7.5
Вычисление выражений создания экземпляров классов во время выполнения, 15.9.4
Порядок вычисления других выражений, 15.7.5
Оператор throw, 14.18
Вычисление вызова метода во время выполнения, 15.12.4
Порядок вычисления других выражений, 15.7.5
Перегрузка, 8.4.9
Обработка исключения во время выполнения, 11.3
Выражения и проверки во время выполнения, 15.5
Начальные значения переменных, 4.12.5
Виды переменных, 4.12.3
Оператор throw, 14.18
Оператор try, 14.20

S

область видимости объявления, 6.3
базовый цикл for, 14.14.1
тело класса и объявления членов, 8.1.6
объявления классов, 8.1
литералы классов, 15.8.2
шаг компиляции 1: определение класса или интерфейса для поиска, 15.12.1
расширенный цикл for, 14.14.2, 14.14.2
константы перечисления, 8.9.1
объявления полей, 8.3
формальные параметры, 8.4.1
обобщенные классы и параметры типов, 8.1.2
обобщенные конструкторы, 8.8.4
обобщенные интерфейсы и параметры типов, 9.1.2
обобщенные методы, 8.4.4
объявления импорта, 7.5
тело интерфейса и объявления членов, 9.1.4
объявления интерфейсов, 9.1
объявления локальных классов, 14.3
деклараторы локальных переменных и типы, 14.4.1
объявления типов членов, 8.5
объявления методов, 8.4
именованные пакеты, 7.4.1
переклассификация контекстуально неоднозначных имен, 6.5.2, 6.5.2
простые имена пакетов, 6.5.3.1
объявления типов верхнего уровня, 7.6
оператор try, 14.20
try-with-resources, 14.20.3
переменные типов, 4.4
семантика конечных полей, 17.5.1
разделители, 3.11
лексическая грамматика, 2.2
затенение, 6.4.1
шаг компиляции 1: определение класса или интерфейса для поиска, 15.12.1
определение потенциально применимых методов, 15.12.2.1
скрытие, 6.4.2
область видимости объявления, 6.3
имена простых выражений, 6.5.6.1
имена простых методов, 6.5.7.1
затенение и скрытие, 6.4
базовый цикл for, 14.14.1
тело класса и объявления членов, 8.1.6
объявления классов, 8.1
расширенный цикл for, 14.14.2
константы перечисления, 8.9.1
объявления полей, 8.3
формальные параметры, 8.4.1
обобщенные классы и параметры типов, 8.1.2
обобщенные конструкторы, 8.8.4
объявления импорта, 7.5
объявления интерфейсов, 9.1
объявления локальных классов, 14.3
деклараторы локальных переменных и типы, 14.4.1
объявления типов членов, 8.5
объявления методов, 8.4
именованные пакеты, 7.4.1
объявления типов верхнего уровня, 7.6
оператор try, 14.20
try-with-resources, 14.20.3
разделяемые переменные, 17.4.1
порядок happens-before, 17.4.5
операторы сдвига, 15.19
константные выражения, 15.28
целочисленные операции, 4.2.2
унарное числовое продвижение, 5.6.1
оператор присваивания =, 15.26.1
преобразование присваивания, 5.2
выражения и проверки во время выполнения, 15.5, 15.5
нормальное и внезапное завершение вычисления, 15.6, 15.6
имена простых выражений, 6.5.6.1
константные выражения, 15.28
выражения доступа к полям, 15.11
имена простых методов, 6.5.7.1
простые имена пакетов, 6.5.3.1
простые имена пакетов или типов, 6.5.4.1
простые имена типов, 6.5.5.1
аннотации с одним элементом, 9.7.3
элементы типов аннотаций, 9.6.1
объявления single-static-import, 7.5.3
шаг компиляции 1: определение класса или интерфейса для поиска, 15.12.1
определение потенциально применимых методов, 15.12.2.1
объявления импорта, 7.5
переклассификация контекстуально неоднозначных имен, 6.5.2, 6.5.2
область видимости объявления, 6.3
имена простых методов, 6.5.7.1
объявления single-type-import, 7.5.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
объявления single-type-import, 7.5.1
объявления, 6.1
объявления импорта, 7.5
переклассификация контекстно-неопределенных имен, 6.5.2
область видимости объявления, 6.3
объявления single-static-import, 7.5.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
объявления типов верхнего уровня, 7.6
ожидание и уступка, 17.3
операторы, 14.5
статические поля, 8.3.1.1, 13.4.10
обобщённые классы и параметры типа, 8.1.2
виды переменных, 4.12.3, 4.12.3
время инициализации, 12.4.1
статические инициализаторы, 8.7, 13.4.25
тело класса и объявления членов, 8.1.6
определённое присвоение и статические инициализаторы, 16.8
проверка исключений, 11.2.3
final-поля, 8.3.1.2
обобщённые классы и параметры типа, 8.1.2
вложенные классы и содержащие экземпляры, 8.1.3
оператор возврата, 14.17
простые имена выражений, 6.5.6.1
статические инициализаторы, 13.4.25
оператор throw, 14.18
объявления статического типа члена, 8.5.1
анонимные объявления классов, 15.9.5
модификаторы класса, 8.1.1
обобщённые классы и параметры типа, 8.1.2
модификаторы интерфейсов, 9.1.1, 9.1.1
полные имена типов, 6.5.5.2
статические методы, 8.4.3.2, 13.4.19
обобщённые классы и параметры типа, 8.1.2
простые имена выражений, 6.5.6.1
объявления статического импорта по требованию, 7.5.4
шаг компиляции 1: определение класса или интерфейса для поиска, 15.12.1
идентификация потенциально применимых методов, 15.12.2.1
объявления импорта, 7.5
переклассификация контекстно-неопределенных имен, 6.5.2, 6.5.2
область видимости объявления, 6.3
простые имена методов, 6.5.7.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
объявления импорта по требованию для типов, 7.5.2
классы strictfp, 8.1.1.3
выражения fp-strict, 15.4
интерфейсы strictfp, 9.1.1.2
выражения fp-strict, 15.4
методы strictfp, 8.4.3.5
выражения fp-strict, 15.4
оператор конкатенации строк +, 15.18.1
булевый тип и булевы значения, 4.2.5
класс String, 4.3.3
объявления конструкторов, 8.8
создание новых экземпляров класса, 12.5
операции с плавающей точкой, 4.2.4
целочисленные операции, 4.2.2
нормальное и прерывистое завершение вычисления, 15.6
объекты, 4.3.1, 4.3.1
преобразование строк, 5.4
типы, классы и интерфейсы, 4.12.6
преобразование строк, 5.1.11, 5.4
булевый тип и булевы значения, 4.2.5
оператор конкатенации строк +, 15.18.1
преобразование строк, 5.4
строковые литералы, 3.10.5
класс String, 4.3.3
комментарии, 3.7
константные выражения, 15.28
создание новых экземпляров класса, 12.5
последовательности escape для символьных и строковых литералов, 3.10.6
лексические литералы, 15.8.1
операторы равенства ссылок == и !=, 15.21.3
Unicode, 3.1
строки
лексические литералы, 15.8.1
литералы, 3.10
объекты, 4.3.1
строковые литералы, 3.10.5, 3.10.5
последующее изменение final-полей, 17.5.3
подтипизация, 4.10
проверка приведений с проверкой и без проверки, 5.5.2
брошенные исключения методов, 8.4.6
сужение приведения ссылок, 5.1.6
параметризованные типы, 4.5
этап 1: идентификация соответствующих методов по арности, применимых по подтипизации, 15.12.2.2
аргументы типа и джойны, 4.5.1
расширение приведения ссылок, 5.1.5
подтипизация среди типов массивов, 4.10.3
типы массивов, 10.1
подтипизация среди типов классов и интерфейсов, 4.10.2
оператор try, 14.20
подтипизация среди примитивных типов, 4.10.1
суперклассы и подклассы, 8.1.4
члены класса, 8.2
класс Object, 4.3.2
перечисления, 8.9
финальные классы, 8.1.1.2
виды переменных, 4.12.3
процесс загрузки, 12.2.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
суперклассы и суперинтерфейсы, 13.4.4
процесс загрузки, 12.2.1
суперинтерфейсы, 13.5.2
проверка двоичного представления, 12.3.1
суперинтерфейсы, 8.1.5, 13.5.2
абстрактные классы, 8.1.1.1
проверка типов при выполнении, 5.5.3
члены класса, 8.2
суперинтерфейсы и подинтерфейсы, 9.1.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
типы, классы и интерфейсы, 4.12.6
суперинтерфейсы и подинтерфейсы, 9.1.3
процесс загрузки, 12.2.1
суперклассы и подклассы, 8.1.4
суперинтерфейсы, 8.1.5
синтаксическая классификация имени в зависимости от контекста, 6.5.1
оператор switch, 14.11
область действия объявления, 6.3
операторы switch, 16.2.9
операторы switch, 16.2.9
синхронизация, 17.1
объекты, 4.3.1
синхронизированные методы, 8.4.3.6
синхронизированное утверждение, 14.19
переменные volatile, 8.3.1.4
порядок синхронизации, 17.4.4
действия, 17.4.2
взаимодействие с моделью памяти, 12.6.2
синхронизированные методы, 8.4.3.6, 13.4.20
класс Object, 4.3.2
синхронизация, 17.1
синхронизированное утверждение, 14.19
синхронизированное утверждение, 14.19
создание фрейма, синхронизация, передача управления, 15.12.4.5
объекты, 4.3.1
синхронизация, 17.1
синхронизированные утверждения, 16.2.14
синхронизированные утверждения, 16.2.14
синтаксическая классификация имени в зависимости от контекста, 6.5.1
контроль доступа, 6.6
синтаксическая грамматика, 2.3
единицы компиляции, 7.3
элементы ввода и токены, 3.5
лексические переводы, 3.2
синтаксис, 18

Т

this, 15.8.3
инициализация полей в интерфейсах, 9.3.1
инициализаторы переменных класса, 8.3.2.1
инициализаторы переменных экземпляра, 8.3.2.2
инициализаторы экземпляра, 8.6
статические инициализаторы, 8.7
статические методы, 8.4.3.2
потоки и блокировки, 17
объекты, 4.3.1
оператор throw, 14.18
оператор throw, 14.18
операторы break, continue, return и throw, 16.2.13
причины исключений, 11.1.2
анализ исключений операторов, 11.2.2
начальные значения переменных, 4.12.5
виды переменных, 4.12.3
нормальное и прерванное завершение операторов, 14.1, 14.1
обработка исключения во время выполнения, 11.3
объявления типов верхнего уровня, 7.6
выражения создания экземпляров классов, 15.9
модификаторы класса, 8.1.1
единицы компиляции, 7.3
определение доступности, 6.6.1
форма двоичного файла, 13.1
поддержка пакетов в хосте, 7.2
модификаторы интерфейса, 9.1.1
члены пакета, 7.1, 7.1
область видимости объявления, 6.3, 6.3, 6.3
затенение, 6.4.1
объявления single-static-import, 7.5.3
объявления single-type-import, 7.5.1
время инициализации, 12.4.1
транзитные поля, 8.3.1.3, 13.4.11
оператор try, 14.20
переменные массивов, 10.2
проверка исключений во время компиляции, 11.2, 11.2
объявления, 6.1
определённое присваивание и параметры, 16.3
анализ исключений операторов, 11.2.2
выражения и проверки во время выполнения, 15.5, 15.5
переменные final, 4.12.4, 4.12.4
начальные значения переменных, 4.12.5
виды переменных, 4.12.3
операторы с метками, 14.7
переклассификация контекстуально неоднозначных имён, 6.5.2
обработка исключения во время выполнения, 11.3
область видимости объявления, 6.3
затенение и затемнение, 6.4
общие переменные, 17.4.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
оператор throw, 14.18, 14.18, 14.18
операторы try, 16.2.15
операторы try, 16.2.15
оператор try-catch
оператор try, 14.20
оператор try-catch-finally
оператор try, 14.20
оператор try-finally
оператор try, 14.20
try-with-resources, 14.20.3
переменные final, 4.12.4
область видимости объявления, 6.3
затенение и затемнение, 6.4
оператор try, 14.20
try-with-resources (основной)
расширенный try-with-resources, 14.20.3.2
типы аргументов и подстановочные знаки, 4.5.1
преобразование захвата, 5.1.10
проверяемые и непроверяемые преобразования типов, 5.5.2
выражения создания экземпляров классов, 15.9, 15.9
ссылочные типы и значения, 4.3
реализуемые типы, 4.7
подтипизация между типами классов и интерфейсов, 4.10.2
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
типы, классы и интерфейсы, 4.12.6
непроверяемое преобразование, 5.1.9
оператор сравнения типов instanceof, 15.20.2
выражения и проверки во время выполнения, 15.5
объекты, 4.3.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
стирание типов, 4.6
преобразование присваивания, 5.2
проверенные и непроверенные преобразования приведения типов, 5.5.2
проверка приведений типов во время выполнения, 5.5.3
выбор наиболее подходящего метода, 15.12.2.5
параметры типа класса, 13.4.5
этап 3 компиляции: подходит ли выбранный метод?, 15.12.3
Подпись конструктора, 8.8.2
создание стековой рамки, синхронизация, передача управления, 15.12.4.5
оценка аргументов, 15.12.4.2
объявления полей, 13.4.8
форма бинарного файла, 13.1, 13.1, 13.1, 13.1
вывод аргументов типа на основе фактических аргументов, 15.12.2.7
формальные параметры метода и конструктора, 13.4.14
параметры типа метода и конструктора, 13.4.13
преобразование вызова метода, 5.3
тип результата метода и типы исключений, 15.12.2.6, 15.12.2.6
тип возвращаемого значения метода, 13.4.15
Подпись метода, 8.4.2
этап 3: определение методов с переменным числом аргументов, 15.12.2.4
необработанные типы, 4.8
требования к переопределению и скрытию, 8.4.8.3
переменные типа, 4.4
тип конструктора, 8.8.6
члены и конструкторы параметризованных типов, 4.5.2
тип выражения, 15.3
переменные типа, 4.4
литералы класса, 15.8.2
объявления, 6.1
объявления полей, 13.4.8
обобщенные классы и параметры типа, 8.1.2
обобщенные конструкторы, 8.8.4
обобщенные интерфейсы и параметры типа, 9.1.2
обобщенные методы, 8.4.4
формальные параметры метода и конструктора, 13.4.14
тип возвращаемого значения метода, 13.4.15
ссылки и значения ссылочного типа, 4.3
стирание типов, 4.6
типы, классы и интерфейсы, 4.12.6
объявления импорта типов по требованию, 7.5.2
объявления, 6.1
объявления импорта, 7.5
переклассификация контекстуально неоднозначных имён, 6.5.2
область действия объявления, 6.3
затенение, 6.4.1
объявления импорта статических типов по требованию, 7.5.4
синтаксическая классификация имени в зависимости от контекста, 6.5.1
типы
преобразование захвата, 5.1.10
лексические литералы, 15.8.1
литералы, 3.10
литерал null, 3.10.7
оператор throw, 14.18
типы, классы и интерфейсы, 4.12.6
типы, значения и переменные, 4

U

Оператор унарного минуса -, 15.15.4
Константные выражения, 15.28
Операции с плавающей точкой, 4.2.4
Целочисленные литералы, 3.10.1, 3.10.1
Операции с целыми числами, 4.2.2
Унарное числовое продвижение, 5.6.1
Унарное числовое продвижение, 5.6.1
Доступ к массиву, 10.4
Выражения доступа к массиву, 15.13
Выражения создания массива, 15.10
Оператор поразрядного дополнения ~, 15.15.5
Числовые продвижения, 5.6
Операторы сдвига, 15.19
Оператор унарного минуса -, 15.15.4
Оператор унарного плюса +, 15.15.3
Унарные операторы, 15.15
Оператор унарного плюса +, 15.15.3
Константные выражения, 15.28
Операции с плавающей точкой, 4.2.4
Операции с целыми числами, 4.2.2
Унарное числовое продвижение, 5.6.1
Преобразование unboxing, 5.1.8
Операторы сложения, 15.18, 15.18
Выражения создания массива, 15.10
Оператор assert, 14.10
Преобразование присваивания, 5.2
Двоичное числовое продвижение, 5.6.2
Оператор поразрядного дополнения ~, 15.15.5
Операторы булевой равенства == и !=, 15.21.2
Булевы логические операторы &, ^ и |, 15.22.2
Преобразование приведения типов, 5.5, 5.5, 5.5
Условный оператор ? :, 15.25, 15.25
Оператор условного И &&, 15.23, 15.23
Оператор условного ИЛИ ||, 15.24, 15.24
Оператор do, 14.13
Операторы равенства, 15.21
Операции с плавающей точкой, 4.2.4
Оператор if-then, 14.9.1
Оператор if-then-else, 14.9.2
Целочисленные поразрядные операторы &, ^ и |, 15.22.1
Операции с целыми числами, 4.2.2
Итерация цикла for, 14.14.1.2
Логический оператор дополнения !, 15.15.6
Преобразование вызова метода, 5.3
Операторы умножения, 15.17
Числовые продвижения, 5.6
Операторы сравнения чисел <, <=, > и >=, 15.20.1
Операторы числового равенства == и !=, 15.21.1
Оператор постфиксного декремента --, 15.14.3
Оператор постфиксного инкремента ++, 15.14.2
Оператор префиксного декремента --, 15.15.2
Оператор префиксного инкремента ++, 15.15.1
Оператор switch, 14.11
Оператор унарного минуса -, 15.15.4
Унарное числовое продвижение, 5.6.1, 5.6.1
Оператор унарного плюса +, 15.15.3
Оператор while, 14.12
Преобразование unchecked, 5.1.9
@SafeVarargs, 9.6.3.7
Преобразование присваивания, 5.2
Преобразование приведения типов, 5.5, 5.5
Члены и конструкторы параметризованных типов, 4.5.2
Преобразование вызова метода, 5.3
Тип возвращаемого значения метода, 8.4.5
Этап 1: Определение соответствующих методов по арности, применимых по субтипированию, 15.12.2.2
Переменные ссылочного типа, 4.12.2
Unicode, 3.1
Литералы символов, 3.10.4
Лексическая грамматика, 2.2
Примитивные типы и значения, 4.2
Экранированные коды Unicode, 3.3
Экранированные коды Unicode, 3.3
Последовательности экранирования для символьных и строковых литералов, 3.10.6
Элементы входных данных и токены, 3.5
Лексические преобразования, 3.2
Unicode, 3.1
Выгрузка классов и интерфейсов, 12.7
Типы переменных, 4.12.3
Без имени пакеты, 7.4.2
Единицы компиляции, 7.3
Недостижимые операторы, 14.21
Поле final и константы, 13.4.9
Инициализаторы экземпляра, 8.6
Статические инициализаторы, 8.7

V

Преобразование набора значений, 5.1.13
Преобразование присваивания, 5.2
Двоичное числовое продвижение, 5.6.2
Преобразование приведения типа, 5.5
Операторы составного присваивания, 15.26.2, 15.26.2
Создание фрейма, синхронизация, передача управления, 15.12.4.5
Вычисление, обозначение и результат, 15.1
Числа с плавающей точкой, форматы и значения, 4.2.3
Выражения fp-strict, 15.4
Преобразование вызова метода, 5.3
Оператор простого присваивания =, 15.26.1, 15.26.1
Унарный оператор минус -, 15.15.4
Унарное числовое продвижение, 5.6.1
Переменные как значения, 15.2
Переменные, 4.12
Вычисление, обозначение и результат, 15.1
Переменные как значения, 15.2
Переменные примитивного типа, 4.12.1
Переменные ссылочного типа, 4.12.2
@SafeVarargs, 9.6.3.7
Тип выражения, 15.3
Переменные, 4.12
Проверка двоичного представления, 12.3.1
Проверка ссылки: проверка, подготовка, (при необходимости) разрешение, 12.1.2
Переменные volatile, 8.3.1.4
Порядок happens-before, 17.4.5
Порядок синхронизации, 17.4.4

W

ожидание, 17.2.1
Порядок happens-before, 17.4.5
Наборы ожиданий и уведомления, 17.2
Класс Object, 4.3.2
Корректные выполнения, 17.4.7
Выполнения, 17.4.6
Что такое и что не является двоичной совместимостью, 13.2
Когда происходит инициализация, 12.4.1
Конечные переменные, 4.12.4
Инициализация теста: выполнение инициализаторов, 12.1.3
Когда типы ссылок совпадают, 4.3.4
Проверка приведений типов во время выполнения, 5.5.3
Где используются типы, 4.11
Цикл while, 14.12
Тип boolean и булевы значения, 4.2.5
Циклы while, 16.2.10
Циклы while, 16.2.10
Пробелы, 3.6
Элементы ввода и токены, 3.5, 3.5
Лексическая грамматика, 2.2
Лексические преобразования, 3.2
Расширение и сужение примитивного преобразования, 5.1.4
Преобразование приведения типа, 5.5
Расширяющее преобразование примитивного типа, 5.1.2
Преобразование присваивания, 5.2
Двоичное числовое продвижение, 5.6.2
Преобразование приведения типа, 5.5, 5.5
Преобразование вызова метода, 5.3
Числовые продвижения, 5.6
Унарное числовое продвижение, 5.6.1, 5.6.1
Расширение и сужение примитивного преобразования, 5.1.4
Расширяющее преобразование ссылочного типа, 5.1.5
Преобразование присваивания, 5.2
Преобразование приведения типа, 5.5, 5.5
Операции с плавающей точкой, 4.2.4
Целочисленные операции, 4.2.2
Преобразование вызова метода, 5.3
Разрыв слова, 17.6
Защищенные от записи поля, 17.5.4

© Oracle and/or its affiliates. All rights reserved.
Licensed under the Oracle Technology Network License Agreement.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API