Spec-Zone.ru › Java Language Specification 8

Индекс

Символы

= оператор, 15.26.1
контексты присваивания, 5.2
выражения и проверки во время выполнения, 15.5, 15.5
обычное и внезапное завершение вычисления, 15.6, 15.6
@Deprecated, 9.6.4.6
@FunctionalInterface, 9.6.4.9
@Inherited, 9.6.4.3
@Override, 9.6.4.4
@Repeatable, 9.6.4.8
типы аннотаций, которые можно повторять, 9.6.3
@Retention, 9.6.4.2
типы аннотаций, которые можно повторять, 9.6.3
@SafeVarargs, 9.6.4.7
формальные параметры, 8.4.1
@SuppressWarnings, 9.6.4.5
проверка приведённых типов и проверка непроведённых типов, 5.5.2
формальные параметры, 8.4.1
требования при переопределении и скрытии, 8.4.8.3
непроведённое преобразование, 5.1.9
@Target, 9.6.4.1
множественные аннотации одного и того же типа, 9.7.5
типы аннотаций, которые можно повторять, 9.6.3
где могут появляться аннотации, 9.7.4

А

Прерывание выполнения оператора 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.1
Финальные классы, 8.1.1.2
Суперинтерфейсы, 8.1.5
Абстрактные интерфейсы, 9.1.1.1
Абстрактные методы, 8.4.3.1, 13.4.16
Абстрактные классы, 8.1.1.1
Тело метода, 8.4.7
Декларации методов, 9.4
Управление доступом, 6.6
Доступ к членам суперкласса с помощью super, 15.11.2
Литералы классов, 15.8.2
Модификаторы класса, 8.1.1
Декларации конструкторов, 8.8
Конструктор по умолчанию, 8.8.9
Декларации тела перечисления, 8.9.2
Явные вызовы конструкторов, 8.8.7.1
Обращение к полю с помощью первичного выражения, 15.11.1
Определение потенциально применимых методов, 15.12.2.1
Декларации импорта, 7.5
Модификаторы интерфейса, 9.1.1
Декларации локального класса, 14.3
Декларации типов членов, 8.5
Декларации методов, 9.4
Обычные аннотации, 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
Декларации однострочного статического импорта, 7.5.3
Декларации однострочного импорта типов, 7.5.1
Декларации статического импорта по требованию, 7.5.4
Суперклассы и подклассы, 8.1.4
Суперинтерфейсы, 8.1.5
Суперинтерфейсы и подинтерфейсы, 9.1.3
Декларации импорта типов по требованию, 7.5.2
Доступ к защищенному члену, 6.6.2.1
Доступ к членам и конструкторам, 13.4.7
Доступ к членам суперкласса с помощью super, 15.11.2
Декларации, 6.1
Декларации полей, 8.3
Инициализация полей, 8.3.2, 8.3.2
Инициализация полей в интерфейсах, 9.3.1
Инициализаторы экземпляров, 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
@Target, 9.6.4.1
Типы аннотаций, 9.6
Декларации, 6.1, 6.1, 6.1
Аннотации-метки, 9.7.2
Обычные аннотации, 9.7.1
Аннотации с единственным элементом, 9.7.3
Синтаксическая классификация имени в зависимости от контекста, 6.5.1
Где используются типы, 4.11
Типы аннотаций, 9.6
@Target, 9.6.4.1
Аннотации, 9.7
Декларации, 6.1
Декларации интерфейсов, 9.1
Аннотации, 9.7
Декларации, 6.1
Значения по умолчанию для элементов типа аннотации, 9.6.2
Синтаксическая классификация имени в зависимости от контекста, 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
где используются типы, 4.11, 4.11
анонимные конструкторы, 15.9.5.1
выбор конструктора и его аргументов, 15.9.3
конструктор по умолчанию, 8.8.9
форма двоичного представления, 13.1
списки аргументов оцениваются слева направо, 15.7.4
доступ к элементам массива, 10.4
выражения доступа к элементам массива, 15.10.3
доступ к элементам массива, 10.4
операторы присваивания, 15.26
составные операторы присваивания, 15.26.2
оператор простого присваивания =, 15.26.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
унарное числовое продвижение, 5.6.1
создание массива, 10.3
выражения создания и доступа к массивам, 15.10
выражения ссылок на методы, 15.13
выражения создания массивов, 15.10.1
создание массива, 10.3
инициализаторы массивов, 10.6
объекты, 4.3.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
унарное числовое продвижение, 5.6.1
где используются типы, 4.11, 4.11
инициализаторы массивов, 10.6
создание массива, 10.3
определенное присваивание и инициализаторы массивов, 16.4
нормальное и внезапное завершение вычисления, 15.6
объекты, 4.3.1
вычисление выражений создания массивов во время выполнения, 15.10.2
элементы массива, 10.7
объявления, 6.1, 6.1
порядок happens-before, 17.4.5
именованные выражения, 6.5.6.2
исключение при записи в массив, 10.5
переменные массивов, 10.2
контексты присваивания, 5.2
выражения и проверки во время выполнения, 15.5, 15.5
нормальное и внезапное завершение вычисления, 15.6
переменные, 4.12
типы массивов, 10.1
элементы типа аннотации, 9.6.1
улучшенный цикл for, 14.14.2
сырые типы, 4.8
типы ссылок и значения, 4.3
осуществимые типы, 4.7
где используются типы, 4.11
переменные массивов, 10.2
улучшенный цикл for, 14.14.2
объявления полей (констант), 9.3
объявления полей, 8.3
формальные параметры, 8.4.1, 8.4.1, 8.4.1
параметры лямбда-выражений, 15.27.1, 15.27.1, 15.27.1
объявления и типы локальных переменных, 14.4.1
результат метода, 8.4.5
массивы, 10
выражения создания массивов, 15.10.1
виды переменных, 4.12.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
Выражения создания экземпляров классов, 15.9
Выполнение try-catch, 14.20.1
Выражения и проверки во время выполнения, 15.5, 15.5
Типы и значения, 4.1
Lambda-выражения, 15.27
Выражения вызова методов, 15.12
Выражения ссылок на методы, 15.13
Нормальные аннотации, 9.7.1
Условные выражения ссылок, 15.25.3
Оператор return, 14.17
Вычисление ссылок на методы во время выполнения, 15.13.3
Простой оператор присваивания =, 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
Инициализация полей, 8.3.2
Постоянные переменные, 4.12.4
Формы выражений, 15.2
Начальные значения переменных, 4.12.5
Синтаксическая классификация имени в зависимости от контекста, 6.5.1
Переменные, 4.12
Асинхронные исключения, 11.1.3
Причины исключений, 11.1.2

B

оператор цикла for, 14.14.1
@Target, 9.6.4.1
операторы цикла for, 16.2.12
область видимости объявления, 6.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
где используются типы, 4.11
базовый try-with-resources, 14.20.3.1
бинарная совместимость, 13
бинарное числовое продвижение, 5.6.2
аддитивные операторы (+ и -) для числовых типов, 15.18.2
оператор деления /, 15.17.2
битовые операторы для целых чисел &, ^ и |, 15.22.1
умножительные операторы, 15.17
условные выражения для чисел, 15.25.2
числовые контексты, 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
тело лямбда-выражения, 15.27.2
объявления локальных классов, 14.3
область видимости объявления, 6.3
блоки и операторы, 14
условные выражения с булевыми значениями, 15.25.1
константные выражения с булевыми значениями, 16.1.1
операторы булевой сравнения == и !=, 15.21.2
булевый тип и булевы значения, 4.2.5
булевы литералы, 3.10.3
булевый тип и булевы значения, 4.2.5
преобразование упаковки, 5.1.7
константные выражения, 15.28
идентификаторы, 3.8
лексические литералы, 15.8.1
логические булевы операторы &, ^ и |, 15.22.2
булевый тип и булевы значения, 4.2.5
условный оператор &&, 15.23
условный оператор ||, 15.24
булевый тип и булевы значения, 4.2.5
булевы литералы, 3.10.3
лексические литералы, 15.8.1
пределы, 18.1.3
пределы, включающие преобразование захвата, 18.3.2
вывод параметризации функционального интерфейса, 18.5.3
вывод применимости вызова, 18.5.1
вывод более специфичного метода, 18.5.4
редукция, 18.2
пределы, включающие преобразование захвата, 18.3.2
инкорпорация, 18.3
преобразование упаковки, 5.1.7
контексты присваивания, 5.2
контексты приведения типов, 5.5
литералы классов, 15.8.2
условный оператор ? :, 15.25
создание новых экземпляров классов, 12.5
операции с плавающей точкой, 4.2.4
целочисленные операции, 4.2.2
контексты вызова, 5.3
вывод типа вызова, 18.5.2
нормальное и прерывистое завершение оценки, 15.6
условные выражения для чисел, 15.25.2
объекты, 4.3.1
постфиксный оператор декремента --, 15.14.3
постфиксный оператор инкремента ++, 15.14.2
префиксный оператор декремента --, 15.15.2
префиксный оператор инкремента ++, 15.15.1
ограничения совместимости типов, 18.2.2, 18.2.2
оператор break, 14.15
операторы break, continue, return и throw, 16.2.13
меченые операторы, 14.7
имена и идентификаторы, 6.2
нормальное и прерывистое завершение операторов, 14.1
операторы break, continue, return и throw, 16.2.13

C

преобразование захвата, 5.1.10
выражения доступа к массивам, 15.10.3
операторы присваивания, 15.26
пределы, 18.1.3
выражения приведения типов, 15.16
декларация ссылок на методы во время компиляции, 15.13.1, 15.13.1
шаг 3 компиляции: подходит ли выбранный метод?, 15.12.3
расширенный цикл for, 14.14.2
ограничения совместимости выражений, 18.2.1, 18.2.1
доступ к полям через первичный элемент, 15.11.1
типы функций, 9.9
типы пересечения, 4.9
наименьший общий предок, 4.10.4
члены и конструкторы параметризованных типов, 4.5.2
параметризованные типы, 4.5
квалифицированные имена выражений, 6.5.6.2, 6.5.6.2, 6.5.6.2, 6.5.6.2, 6.5.6.2
условные выражения ссылок, 15.25.3
разрешение, 18.4
простые имена выражений, 6.5.6.1
подтипирование между типами классов и интерфейсов, 4.10.2
аргументы типов параметризованных типов, 4.5.1
тип ссылки на метод, 15.13.2
выражения приведения типов, 15.16
типы массивов, 10.1
контексты приведения, 5.5
шаг 3 компиляции: подходит ли выбранный метод?, 15.12.3
постоянные выражения, 15.28
выражения и проверки во время выполнения, 15.5, 15.5
операции с плавающей точкой, 4.2.4
формы выражений, 15.2
порядок happens-before, 17.4.5
целочисленные операции, 4.2.2
типы пересечения, 4.9
нормальное и прерывистое завершение вычисления, 15.6
объекты, 4.3.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
оператор сравнения типов instanceof, 15.20.2
унарные операторы, 15.15
где используются типы, 4.11
контексты приведения, 5.5
булевый тип и булевы значения, 4.2.5
выражения приведения типов, 15.16, 15.16
выражения и проверки во время выполнения, 15.5, 15.5
порядок happens-before, 17.4.5
виды типов и значений, 4.1
лямбда-выражения, 15.27
выражения ссылок на методы, 15.13
объекты, 4.3.1
операторы равенства ссылок == и !=, 15.21.3
преобразования приведения к примитивным типам, 5.5
преобразования приведения к ссылкам, 5.5
причины исключений, 11.1.2
символьные литералы, 3.10.4
преобразование автоупаковки, 5.1.7
комментарии, 3.7
постоянные выражения, 15.28
последовательности экранирования для символьных и строковых литералов, 3.10.6
лексические литералы, 15.8.1
unicode, 3.1
проверка доступности типа и метода, 15.12.4.3
вычисление ссылок на методы во время выполнения, 15.13.3, 15.13.3, 15.13.3
проверки приведения типов и непроверенные проверки приведения типов, 5.5.2
переменные ссылочного типа, 4.12.2
проверки приведения типов во время выполнения, 5.5.3
проверки приведения типов и непроверенные проверки приведения типов, 5.5.2
ограничения проверяемых исключений, 18.2.5
выбор конструктора и его аргументов, 15.9.3
анонимные конструкторы, 15.9.5.1
выражения создания экземпляров классов, 15.9
декларация ссылок на методы во время компиляции, 15.13.1
конструктор по умолчанию, 8.8.9
ограничения совместимости выражений, 18.2.1
формальные параметры, 8.8.1
выбор наиболее конкретного метода, 15.12.2.5
декларация ссылок на методы во время компиляции, 15.13.1, 15.13.1, 15.13.1
шаг 2 компиляции: определение сигнатуры метода, 15.12.2
условный оператор ? :, 15.25, 15.25
перегрузка методов и конструкторов, 13.4.23
вывод более конкретного метода, 18.5.4, 18.5.4
фаза 1: определение подходящих методов с совпадающей арностью, применимых по строгому вызову, 15.12.2.2
фаза 2: определение подходящих методов с совпадающей арностью, применимых по свободному вызову, 15.12.2.3
фаза 3: определение применимых методов по вызову с переменной арностью, 15.12.2.4
тело класса и объявления членов, 8.1.6, 13.4.6
члены класса, 8.2
декларации типа членов, 8.5, 8.5
область действия объявления, 6.3
что такое и что не является бинарной совместимостью, 13.2
объявления классов, 8.1
объявления, 6.1
типы ссылок и значения, 4.3
типы, классы и интерфейсы, 4.12.6
выражения создания экземпляра класса, 15.9
условный оператор ? :, 15.25, 15.25
объявления конструкторов, 8.8, 8.8
перегрузка конструкторов, 8.8.8
создание новых экземпляров класса, 12.5
анализ исключений выражений, 11.2.1
форма бинарного файла, 13.1
формы выражений, 15.2
функциональные интерфейсы, 9.8
начальные значения переменных, 4.12.5, 4.12.5
инициализаторы экземпляров, 8.6
контексты вызова, 5.3
вывод типа вызова, 18.5.2, 18.5.2
виды переменных, 4.12.3
выражения ссылки на метод, 15.13
имена и идентификаторы, 6.2
объекты, 4.3.1, 4.3.1
оператор return, 14.17
обработка исключения во время выполнения, 11.3
преобразование String, 5.1.11
синтаксическая классификация имени в соответствии с контекстом, 6.5.1, 6.5.1, 6.5.1
типы, классы и интерфейсы, 4.12.6
использование типов, 4.11, 4.11, 4.11, 4.11
литералы классов, 15.8.2
объявления, 6.1
обычные аннотации, 9.7.1
синтаксическая классификация имени в соответствии с контекстом, 6.5.1
загрузка класса, 12.2
причины исключений, 11.1.2
литералы классов, 15.8.2
тестирование загрузки класса, 12.1.1
члены класса, 8.2
абстрактные классы, 8.1.1.1
объявления, 6.1
типы функций, 9.9
члены и конструкторы параметризованных типов, 4.5.2
тип вызова метода, 15.12.2.6
модификаторы класса, 8.1.1
@Target, 9.6.4.1
объявления анонимных классов, 15.9.5
объявления локальных классов, 14.3
приведение типов ссылок, 5.5.1, 5.5.1, 5.5.1
объект class Object, 4.3.2
проверка приведений во время выполнения, 5.5.3, 5.5.3
тип вызова метода, 15.12.2.6
объекты класса для массивов, 10.8
типы, классы и интерфейсы, 4.12.6
класс String, 4.3.3
лексические литералы, 15.8.1
литералы, 3.10
объекты, 4.3.1
строковые литералы, 3.10.5, 3.10.5
параметры типа класса, 13.4.5
классы, 8
объявления локальных классов, 14.3
члены пакета, 7.1
полные имена выражений, 6.5.6.2
переклассификация контекстуально неоднозначных имён, 6.5.2
объявления типов верхнего уровня, 7.6
комментарии, 3.7
элементы и токены ввода, 3.5
лексическая грамматика, 2.2
лексические преобразования, 3.2
разделители строк, 3.4
Unicode, 3.1
единицы компиляции, 7.3
определение доступности, 6.6.1
поддержка пакетов в хосте, 7.2
наблюдаемость пакета, 7.4.3
члены пакета, 7.1
переклассификация контекстуально неоднозначных имён, 6.5.2, 6.5.2
область действия объявления, 6.3
затенение, 6.4.1
синтаксическая грамматика, 2.3
проверка исключений во время компиляции, 11.2
ограничения на исключения с проверкой, 18.2.5
объявление ссылки на метод во время компиляции, 15.13.1
ограничения checked исключений, 18.2.5
выбор наиболее специфичного метода, 15.12.2.5
шаг 2 компиляции: определение сигнатуры метода, 15.12.2
ограничения совместимости выражений, 18.2.1, 18.2.1
определение потенциально применимых методов, 15.12.2.1
вывод типа вызова, 18.5.2, 18.5.2
выражения ссылок на методы, 15.13
этап 1: определение методов с совпадающим числом аргументов, применимых по строгому вызову, 15.12.2.2
вычисление ссылок на методы во время выполнения, 15.13.3
шаг 1 компиляции: определение класса или интерфейса для поиска, 15.12.1
класс Object, 4.3.2
объявление ссылки на метод во время компиляции, 15.13.1
определение потенциально применимых методов, 15.12.2.1
тип вызова метода, 15.12.2.6
сырые типы, 4.8
шаг 2 компиляции: определение сигнатуры метода, 15.12.2
выбор конструктора и его аргументов, 15.9.3, 15.9.3
объявление ссылки на метод во время компиляции, 15.13.1
константы перечислений, 8.9.1
перегрузка, 8.4.9
что такое и что не является бинарной совместимостью, 13.2
шаг 3 компиляции: подходит ли выбранный метод?, 15.12.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.13.3, 15.13.3, 15.13.3
дополнительные пары границ, 18.3.1
включение, 18.3
операторы сложного присваивания, 15.26.2
оператор левой части сначала, 15.7.1
вычисление целевой ссылки (при необходимости), 15.12.4.1
выражения ссылок на методы, 15.13
понятия и обозначения, 18.1
тип условного выражения (примитивный 3-й операнд, часть i), 15.25
тип условного выражения (примитивный 3-й операнд, часть ii), 15.25
тип условного выражения (ссылочный 3-й операнд, часть i), 15.25
тип условного выражения (ссылочный 3-й операнд, часть ii), 15.25
тип условного выражения (ссылочный 3-й операнд, часть iii), 15.25
условный оператор ? :, 15.25, 16.1.5, 16.1.6
бинарное числовое продвижение, 5.6.2
булевый тип и булевые значения, 4.2.5, 4.2.5
условный оператор ? :, 16.1.5, 16.1.6
константные выражения, 15.28
операции с плавающей точкой, 4.2.4
формы выражений, 15.2, 15.2
определение потенциально применимых методов, 15.12.2.1
целочисленные операции, 4.2.2
объекты, 4.3.1
этап 1: определение методов с совпадающим числом аргументов, применимых по строгому вызову, 15.12.2.2
условный оператор И &&, 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.2
константные выражения, 15.28
контексты присваивания, 5.2
булевые константные выражения, 16.1.1
класс String, 4.3.3
создание новых экземпляров класса, 12.5
поля final и статические константные переменные, 13.4.9
переменные final, 4.12.4
формы выражений, 15.2
выражения fp-strict, 15.4
инициализация полей в интерфейсах, 9.3.1
нормальные аннотации, 9.7.1
числовые условные выражения, 15.25.2
объекты, 4.3.1
оператор конкатенации строк +, 15.18.1
строковые литералы, 3.10.5
последующее изменение полей final, 17.5.3
недостижимые операторы, 14.21, 14.21, 14.21
формулы ограничений, 18.1.2
редукция, 18.2
тело конструктора, 8.8.7
объявления конструкторов, 8.8
определенное присвоение, конструкторы и инициализаторы экземпляров, 16.9
начальные значения переменных, 4.12.5
виды переменных, 4.12.3
оператор возврата, 14.17
this, 15.8.3
объявления конструкторов, 8.8
тело класса и объявления членов, 8.1.6
создание новых экземпляров класса, 12.5
объявления, 6.1, 6.1
поля final, 8.3.1.2
сырые типы, 4.8
оператор возврата, 14.17
вычисление в ходе выполнения создания выражений экземпляров класса, 15.9.4
имена простых выражений, 6.5.6.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
где используются типы, 4.11
модификаторы конструктора, 8.8.3
@Target, 9.6.4.1
перегрузка конструкторов, 8.8.8
подпись конструктора, 8.8.2
форма бинарного, 13.1
констуктор выбрасывает, 8.8.5
проверка исключений во время компиляции, 11.2
объявления, 6.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
оператор throw, 14.18
где используются типы, 4.11, 4.11
контекстно-свободные грамматики, 2.1
единицы компиляции, 7.3
оператор continue, 14.16
операторы break, continue, return и throw, 16.2.13
меченые операторы, 14.7
имена и идентификаторы, 6.2
нормальное и прерывистое завершение операторов, 14.1
преобразования и контексты, 5
выражения в скобках, 15.8.5
тип выражения, 15.3
создание фрейма, синхронизация, передача управления, 15.12.4.5
вычисление в ходе выполнения ссылок на методы, 15.13.3, 15.13.3, 15.13.3
создание новых экземпляров класса, 12.5
объявления конструкторов, 8.8
инициализация полей, 8.3.2
форма бинарного, 13.1
инициализаторы экземпляров, 8.6
вычисление в ходе выполнения создания выражений экземпляров класса, 15.9.4
статические поля, 8.3.1.1
оператор конкатенации строк +, 15.18.1
когда происходит инициализация, 12.4.1

Д

объявления, 6.1
функциональные интерфейсы, 9.8
члены и конструкторы параметризованных типов, 4.5.2
имена и идентификаторы, 6.2
синтаксическая классификация имени в зависимости от контекста, 6.5.1
где используются типы, 4.11, 4.11
конструктор по умолчанию, 8.8.9
форма двоичного файла, 13.1
объявления методов и конструкторов, 13.4.12
значения по умолчанию для элементов типов аннотаций, 9.6.2
аннотации-метки, 9.7.2
аннотации с одним элементом, 9.7.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
определённая инициализация, 16
операторы присваивания, 15.26
постоянные переменные, 4.12.4, 4.12.4, 4.12.4
начальные значения переменных, 4.12.5
вложенные классы и окружающие экземпляры, 8.1.3
виды переменных, 4.12.3
тело лямбда-выражения, 15.27.2
выражения в скобках, 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
инициализация полей, 8.3.2, 8.3.2
постоянные поля и статические константы, 13.4.9
форма двоичного файла, 13.1
инициализация полей в интерфейсах, 9.3.1
простые имена выражений, 6.5.6.1
статические инициализаторы, 8.7
оператор throw, 14.18
когда происходит инициализация, 12.4.1
подробности о защищённом доступе, 6.6.2
определение доступности, 6.6.1
определение доступности, 6.6.1
объявления типов верхнего уровня, 7.6
определение окружающих экземпляров, 15.9.2
анонимные конструкторы, 15.9.5.1
выбор конструктора и его аргументов, 15.9.3, 15.9.3
выражения создания экземпляров класса, 15.9
декларация ссылки на метод во время компиляции, 15.13.1
конструктор по умолчанию, 8.8.9
формальные параметры, 8.8.1
вложенные классы и окружающие экземпляры, 8.1.3
выражения ссылок на методы, 15.13
вычисление ссылок на методы во время выполнения, 15.13.3
определение класса, который создаётся, 15.9.1
абстрактные классы, 8.1.1.1
выражения создания экземпляров класса, 15.9
типы перечислений, 8.9
определение смысла имени, 6.5
члены класса, 8.2
объявления, 6.1
члены интерфейса, 9.2
имена и идентификаторы, 6.2
скрытие, 6.4.2
где используются типы, 4.11
оператор деления /, 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
@Target, 9.6.4.1
переменные массивов, 10.2
циклы for, 16.2.12
область видимости объявления, 6.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
где используются типы, 4.11
объявления тела перечисления, 8.9.2
объявления конструкторов, 8.8
объявления, 6.1, 6.1, 6.1
константы перечисления, 8.9.1
@Target, 9.6.4.1
определённое присваивание и константы перечисления, 16.5
определённое присваивание и статические инициализаторы, 16.8
типы перечислений, 8.9
обычные аннотации, 9.7.1
где используются типы, 4.11
члены перечисления, 8.9.3
объявления, 6.1
форма двоичного, 13.1
типы перечислений, 8.9
@Target, 9.6.4.1
абстрактные методы, 8.4.3.1
объявления классов, 8.1
объявления, 6.1
обычные аннотации, 9.7.1
суперклассы и подклассы, 8.1.4
оператор switch, 14.11
операторы сравнения на равенство, 15.21
константные выражения, 15.28
стирание, 4.6
контексты присваивания, 5.2
выражения приведения типов, 15.16
проверенные и непроверенные приведения типов, 5.5.2
проверенные приведения типов во время выполнения, 5.5.3
выбор наиболее специфичного метода, 15.12.2.5
класс Object, 4.3.2
параметры типа класса, 13.4.5
этап компиляции 3: подходит ли выбранный метод?, 15.12.3
Подпись конструктора, 8.8.2
создание стекового кадра, синхронизация, передача управления, 15.12.4.5
объявления, 6.1
оценка аргументов, 15.12.4.2
объявления полей, 13.4.8
форма двоичного, 13.1, 13.1, 13.1
контексты вызовов, 5.3
формальные параметры методов и конструкторов, 13.4.14
параметры типа методов и конструкторов, 13.4.13
тип вызова метода, 15.12.2.6
тип результата метода, 13.4.15
Подпись метода, 8.4.2
сырые типы, 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
анализ исключений операторов, 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
методы с бросаемыми исключениями, 8.4.6
статические инициализаторы, 8.7
оператор throw, 14.18, 14.18
оператор try, 14.20
тип лямбда-выражения, 15.27.3
Исключения, 11
операции с плавающей точкой, 4.2.4
операции с целыми числами, 4.2.2
нормальное и прерывистое завершение операторов, 14.1
оператор throw, 14.18
выполнение, 12
выполнение операторов объявления локальных переменных, 14.4.2
переменные final, 4.12.4
выполнение 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
объявления в теле перечисления, 8.9.2
анализ исключений операторов, 11.2.2
форма двоичного файла, 13.1
вложенные классы и окружающие экземпляры, 8.1.3, 8.1.3
инициализаторы экземпляров, 8.6
контексты вызовов, 5.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1
где используются типы, 4.11, 4.11
ограничения совместимости выражений, 18.2.1
имена выражений, 15.14.1
объявления, 6.1
операторы выражений, 14.8, 16.2.6
вычисление, обозначение и результат, 15.1
операторы выражений, 16.2.6
определение потенциально применимых методов, 15.12.2.1
инициализация оператора for, 14.14.1.1
тип лямбда-выражения, 15.27.3
выражения, 15
выражения и проверки во время выполнения, 15.5
расширенный try-with-resources, 14.20.3.2

Ф

обратная связь, 1.5
объявления полей (констант), 9.3
@Target, 9.6.4.1
инициализаторы массивов, 10.6
переменные массивов, 10.2, 10.2
объявления, 6.1
постоянные переменные, 4.12.4
тело интерфейса и объявления членов, 9.1.4
виды переменных, 4.12.3
скрытие, 6.4.2
затенение, 6.4.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
где используются типы, 4.11
выражения доступа к полям, 15.11
операторы присваивания, 15.26
имена и идентификаторы, 6.2
нормальное и внезапное завершение оценки, 15.6
объекты, 4.3.1
сырые типы, 4.8
простой оператор присваивания =, 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
затенение, 6.4.1
простые имена выражений, 6.5.6.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
где могут появляться аннотации, 9.7.4
где используются типы, 4.11
инициализация полей, 8.3.2
определённое присваивание и статические инициализаторы, 16.8
определённое присваивание, конструкторы и инициализаторы экземпляров, 16.9
пошаговая процедура инициализации, 12.4.2
проверка на исключения, 11.2.3, 11.2.3
постоянные поля и статические константы, 13.4.9
инициализация полей в интерфейсах, 9.3.1
простые имена выражений, 6.5.6.1
статические инициализаторы, 8.7
this, 15.8.3
модификаторы полей, 8.3.1
@Target, 9.6.4.1
объявления полей, 8.3
конечные классы, 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
объявления полей, 13.5.5
постоянные переменные, 4.12.4
верификация двоичного представления, 12.3.1
конечные методы, 8.4.3.3, 13.4.17
верификация двоичного представления, 12.3.1
постоянные переменные, 4.12.4
константные выражения, 15.28, 15.28
пошаговая процедура инициализации, 12.4.2
объявления тела перечисления, 8.9.2
инициализация полей, 8.3.2
конечные поля, 8.3.1.2
конечные поля и статические константы, 13.4.9
форма двоичного файла, 13.1
инициализация полей в интерфейсах, 9.3.1
вложенные классы и окружающие экземпляры, 8.1.3, 8.1.3, 8.1.3
тело лямбда-выражения, 15.27.2
деклараторы локальных переменных и типы, 14.4.1
сужение преобразования ссылки, 5.1.6
оператор try, 14.20
try-with-resources, 14.20.3
время инициализации, 12.4.1
завершение работы с экземплярами класса, 12.6
класс Object, 4.3.2
объявления тела перечисления, 8.9.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.27.1
лексические литералы, 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
тип boolean и булевы значения, 4.2.5
объявления, 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
переменные final, 4.12.4
загрузка классов и интерфейсов, 12.2
нахождение метода для вызова, 15.12.4.4
разрешение символьных ссылок, 12.3.3
объявления типов верхнего уровня, 7.6
когда типы ссылок одинаковы, 4.3.4, 4.3.4
формальные параметры, 8.4.1, 8.8.1
@Target, 9.6.4.1
массивы переменных, 10.2
выбор конструктора и его аргументов, 15.9.3
объявление ссылки на метод во время компиляции, 15.13.1
шаг компиляции 3: подходит ли выбранный метод?, 15.12.3
объявления, 6.1, 6.1
конструктор по умолчанию, 8.8.9
определённая присваиваемость и параметры, 16.3, 16.3
оценка аргументов, 15.12.4.2
переменные final, 4.12.4, 4.12.4
форма двоичного представления, 13.1
формальные параметры, 8.8.1
начальные значения переменных, 4.12.5, 4.12.5
вызов test.main, 12.1.4
виды переменных, 4.12.3, 4.12.3
параметры лямбда-выражений, 15.27.1, 15.27.1
формальные параметры методов и конструкторов, 13.4.14
объявления методов, 8.4
переклассификация контекстно-неоднозначных имён, 6.5.2, 6.5.2
область видимости объявления, 6.3, 6.3
затенение и затемнение, 6.4
совместные переменные, 17.4.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
this, 15.8.3
переменные ссылочного типа, 4.12.2
где используются типы, 4.11, 4.11, 4.11, 4.11
формы выражений, 15.2
булевы условные выражения, 15.25.1
выбор наиболее специфичного метода, 15.12.2.5
выражения создания экземпляров класса, 15.9
условный оператор ? :, 15.25, 15.25
ограничения совместимости выражений, 18.2.1, 18.2.1
идентификация потенциально применимых методов, 15.12.2.1
лямбда-выражения, 15.27
выражения ссылки на метод, 15.13
вывод более специфичного метода, 18.5.4
числовые условные выражения, 15.25.2
выражения в скобках, 15.8.5
встречные ссылки во время инициализации поля, 8.3.3
время инициализации, 12.4.1
выражения fp-strict, 15.4
аддитивные операторы (+ и -) для числовых типов, 15.18.2
преобразования типов, 15.16
константные выражения, 15.28
оператор деления /, 15.17.2
типы с плавающей запятой, форматы и значения, 4.2.3
формальные параметры, 8.4.1
объявления методов, 9.4
оператор умножения *, 15.17.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
объявления single-static-import, 7.5.3
объявления single-type-import, 7.5.1
объявления static-import-on-demand, 7.5.4
объявления типов верхнего уровня, 7.6
объявления type-import-on-demand, 7.5.2
типы функций, 9.9
ограничения checked exception, 18.2.5
ограничения совместимости выражений, 18.2.1
вывод параметризации функциональных интерфейсов, 18.5.3
тип выражения lambda, 15.27.3
тип ссылки на метод, 15.13.2
вывод параметризации функциональных интерфейсов, 18.5.3
ограничения совместимости выражений, 18.2.1
тип выражения lambda, 15.27.3
функциональные интерфейсы, 9.8
@FunctionalInterface, 9.6.4.9
ограничения checked exception, 18.2.5
ограничения совместимости выражений, 18.2.1
определение потенциально применимых методов, 15.12.2.1
выражения lambda, 15.27
выражения ссылки на методы, 15.13
тип выражения lambda, 15.27.3
тип ссылки на метод, 15.13.2

Г

обобщенные классы и параметры типов, 8.1.2
@Target, 9.6.4.1
преобразование захвата, 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
место использования типов, 4.11
обобщенные конструкторы, 8.8.4
@Target, 9.6.4.1
выражения создания экземпляра класса, 15.9
объявления, 6.1
форма двоичного файла, 13.1
область действия объявления, 6.3
синтаксическая классификация имени в контексте, 6.5.1
стирание типов, 4.6
переменные типа, 4.4
место использования типов, 4.11
обобщенные интерфейсы и параметры типов, 9.1.2
@Target, 9.6.4.1
преобразование захвата, 5.1.10
объявления, 6.1
форма двоичного файла, 13.1
параметризованные типы, 4.5
область действия объявления, 6.3
подтипирование между типами классов и интерфейсов, 4.10.2
суперинтерфейсы, 8.1.5
синтаксическая классификация имени в контексте, 6.5.1
переменные типа, 4.4
типы, классы и интерфейсы, 4.12.6
место использования типов, 4.11
обобщенные методы, 8.4.4
@Target, 9.6.4.1
компиляционное объявление ссылки на метод, 15.13.1
компиляционный этап 2: определение сигнатуры метода, 15.12.2
объявления, 6.1
форма двоичного файла, 13.1
типы функций, 9.9, 9.9
объявления методов, 8.4, 9.4
выражения вызова метода, 15.12
результат метода, 8.4.5
сигнатура метода, 8.4.2
область действия объявления, 6.3
синтаксическая классификация имени в контексте, 6.5.1
стирание типов, 4.6
переменные типа, 4.4
место использования типов, 4.11
нотация грамматики, 2.4
грамматики, 2

H

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

I

идентификаторы, 3.8
объявления, 6.1
ключевые слова, 3.9
лексическая грамматика, 2.2
определение потенциально применимых методов, 15.12.2.1
объявление метода-ссылок во время компиляции, 15.13.1, 15.13.1, 15.13.1
этап компиляции 1: определение класса или интерфейса для поиска, 15.12.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
преобразование боксрования, 5.1.7
преобразование захвата, 5.1.10
контексты приведения типов, 5.5
контексты вызова, 5.3, 5.3
численные контексты, 5.6
унарное численное продвижение, 5.6.1
инструкция if, 14.9
булевый тип и булевы значения, 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
включение, 18.3
увеличение в цикле for, 16.2.12.2
переменные вывода, 18.1.1
наследование и переопределение, 9.4.1
проверка исключений во время компиляции, 11.2
объявление метода-ссылок во время компиляции, 15.13.1
этап 3 компиляции: подходит ли выбранный метод?, 15.12.3
члены интерфейса, 9.2
объявления методов, 9.4
наследование, переопределение и скрытие, 8.4.8
класс Object, 4.3.2
объявление метода-ссылок во время компиляции, 15.13.1
константы перечислений, 8.9.1
функциональные типы, 9.9
наследование методов с подразумеваемыми переопределениями, 8.4.8.4, 9.4.1.3
переменные ссылочного типа, 4.12.2
начальные значения переменных, 4.12.5
инициализаторы массивов, 10.6
создание новых экземпляров классов, 12.5
инициализация полей, 8.3.2
поля final и статические константы, 13.4.9
инициализация полей в интерфейсах, 9.3.1
виды переменных, 4.12.3, 4.12.3, 4.12.3
подготовка типа класса или интерфейса, 12.3.2
вычисление выражений создания массивов во время выполнения, 15.10.2
вычисление выражений создания экземпляров классов во время выполнения, 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
инициализация полей в интерфейсах, 9.3.1
подробная процедура инициализации, 12.4.2
инициализация полей, 8.3.2
поля final и статические константы, 13.4.9
инициализация цикла for, 14.14.1.1
часть инициализации цикла for, 16.2.12.1
инициализация теста: выполнение инициализаторов, 12.1.3
вложенные классы и окружающие экземпляры, 8.1.3
объявления анонимных классов, 15.9.5
этап компиляции 3: подходит ли выбранный метод?, 15.12.3
определение окружающих экземпляров, 15.9.2
явные вызовы конструкторов, 8.8.7.1
форма двоичного файла, 13.1
объявления локальных классов, 14.3
выражения ссылки на методы, 15.13
квалифицированное this, 15.8.4
время инициализации, 12.4.1
элементы и токены ввода, 3.5
вывод типов при вызове, 18.5.2
лексическая грамматика, 2.2, 2.2
лексические преобразования, 3.2
unicode, 3.1
создание экземпляров, 12.5, 15.9
условный оператор ? :, 15.25, 15.25
объявления конструкторов, 8.8, 8.8, 8.8
перегрузка конструкторов, 8.8.8
создание новых экземпляров класса, 12.5
анализ исключений в выражениях, 11.2.1
инициализация полей, 8.3.2
форма двоичного файла, 13.1, 13.1
формы выражений, 15.2
функциональные интерфейсы, 9.8
начальные значения переменных, 4.12.5, 4.12.5
инициализаторы экземпляров, 8.6, 8.6
контексты вызова, 5.3
вывод типов при вызове, 18.5.2, 18.5.2
виды переменных, 4.12.3
выражения ссылки на методы, 15.13
имена и идентификаторы, 6.2
объекты, 4.3.1, 4.3.1
оператор возврата, 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
где используются типы, 4.11, 4.11, 4.11, 4.11
инициализаторы экземпляров, 8.6
тело класса и объявления членов, 8.1.6
определённое присваивание, конструкторы и инициализаторы экземпляров, 16.9
проверка исключений, 11.2.3
оператор возврата, 14.17
простые имена выражений, 6.5.6.1
this, 15.8.3
оператор throw, 14.18
оператор instanceof, 15.20.2
выражения и проверки во время выполнения, 15.5
объекты, 4.3.1
синтаксическая классификация имени в контексте, 6.5.1
где используются типы, 4.11, 4.11
поразрядные операторы целых чисел &, ^ и |, 15.22.1
преобразование бинарных чисел, 5.6.2
целочисленные операции, 4.2.2
операторы сдвига, 15.19, 15.19
целочисленные литералы, 3.10.1
упаковка, 5.1.7
константные выражения, 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
члены интерфейса, 9.2
объявления типов членов, 8.5, 8.5
область видимости объявления, 6.3
объявления интерфейсов, 9.1
объявления, 6.1
справочные типы и значения, 4.3
типы, классы и интерфейсы, 4.12.6
члены интерфейса, 9.2, 13.5.3
проверка доступности типа и метода, 15.12.4.3
объявления, 6.1
форма двоичного файла, 13.1, 13.1
тело метода интерфейса, 9.4.3
суперинтерфейсы, 8.1.5
текущий объект, 15.8.3
момент инициализации, 12.4.1
объявления методов интерфейса, 13.5.6
методы интерфейса, 9.4
@Target, 9.6.4.1, 9.6.4.1
массивы переменных, 10.2
объявления, 6.1, 6.1, 6.1
константы (final переменные), 4.12.4
наследование, переопределение и скрытие, 8.4.8
тело интерфейса и объявления элементов, 9.1.4
сырые типы, 4.8
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
где используются типы, 4.11, 4.11, 4.11, 4.11
модификаторы интерфейса, 9.1.1
@Target, 9.6.4.1
статические объявления типов членов, 8.5.1
параметры типа интерфейса, 13.5.4
интерфейсы, 9
члены пакета, 7.1
квалифицированные имена выражений, 6.5.6.2
переквалификация контекстуально неоднозначных имён, 6.5.2
объявления типов верхнего уровня, 7.6
прерывания, 17.2.3
пересечения типов, 4.9
форма двоичного файла, 13.1, 13.1
функциональные интерфейсы, 9.8
переменные типа, 4.4
где используются типы, 4.11
введение, 1
вывод применимости вызова, 18.5.1
вывод типа вызова, 18.5.2, 18.5.2, 18.5.2, 18.5.2
фаза 1: определение соответствующих методов с арифметической точностью, применимых по строгому вызову, 15.12.2.2
фаза 2: определение соответствующих методов с арифметической точностью, применимых по нестрогому вызову, 15.12.2.3
фаза 3: определение соответствующих методов, применимых по вызову с переменным числом аргументов, 15.12.2.4
контексты вызова, 5.3
выражения создания экземпляров класса, 15.9
формулы ограничений, 18.1.2, 18.1.2
создание фрейма, синхронизация, передача управления, 15.12.4.5
ограничения совместимости выражений, 18.2.1
формальные параметры, 8.4.1
виды типов и значений, 4.1
лямбда-выражения, 15.27
выражения вызова метода, 15.12
выражения ссылки на метод, 15.13
условные выражения ссылок, 15.25.3
ограничения совместимости типов, 18.2.2
вывод типа вызова, 18.5.2
ограничения совместимости выражений, 18.2.1, 18.2.1
вывод типа вызова, 18.5.2, 18.5.2
тип вызова метода, 15.12.2.6
вызов теста 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
методы бросания исключений, 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
формальные параметры, 8.4.1

L

метки операторов, 14.7, 16.2.5
оператор break, 14.15
оператор continue, 14.16
метки операторов, 16.2.5
имена и идентификаторы, 6.2
тело лямбда-выражения, 15.27.2
выбор наиболее подходящего метода, 15.12.2.5
вычисление, обозначение и результат, 15.1
определение потенциально подходящих методов, 15.12.2.1, 15.12.2.1
виды переменных, 4.12.3
тип лямбда-выражения, 15.27.3
лямбда-выражения, 15.27
анализ исключений выражений, 11.2.1
формы выражений, 15.2, 15.2
функциональные интерфейсы, 9.8
определение потенциально подходящих методов, 15.12.2.1
оператор return, 14.17
область видимости объявления, 6.3
параметры лямбда-выражения, 15.27.1
переменные массивов, 10.2
выбор наиболее подходящего метода, 15.12.2.5, 15.12.2.5
шаг 2 компиляции: определение сигнатуры метода, 15.12.2
объявления, 6.1
постоянные переменные, 4.12.4
виды переменных, 4.12.3
этап 1: поиск методов с совпадающим числом аргументов, применимых по строгому вызову, 15.12.2.2
перекрытие и затемнение, 6.4
синтаксическая классификация имени в зависимости от контекста, 6.5.1
где используются типы, 4.11
наименьшее общее надмножество, 4.10.4
пересекающиеся типы, 4.9
разрешение, 18.4
лексическая грамматика, 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
процесс загрузки, 12.2.1
суперклассы и подклассы, 8.1.4
суперинтерфейсы и подинтерфейсы, 9.1.3
объявления локальных классов, 16.2.3
локальные объявления классов, 14.3
выражения создания экземпляров классов, 15.9
модификаторы класса, 8.1.1
форма бинарного, 13.1
вложенные классы и окружающие экземпляры, 8.1.3
объявления локальных классов, 16.2.3
переквалификация контекстуально неоднозначных имён, 6.5.2
перекрытие и затемнение, 6.4
объявления локальных переменных, 14.4, 16.2.4
@Target, 9.6.4.1
инициализаторы массивов, 10.6
объявления, 6.1
начальные значения переменных, 4.12.5
инициализация цикла 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
где используются типы, 4.11
деклараторы и типы локальных переменных, 14.4.1
массивы переменных, 10.2, 10.2
метод для вызова, 15.12.4.4
вычисление ссылок на методы во время выполнения, 15.13.3, 15.13.3, 15.13.3
логический оператор отрицания !, 15.15.6, 16.1.4
логический тип и значения, 4.2.5
константные выражения, 15.28
логический оператор отрицания !, 16.1.4

М

маркировочные аннотации, 9.7.2
аннотации, 9.7
значение имён выражений, 6.5.6
имена выражений, 15.14.1
формы выражений, 15.2
имена и идентификаторы, 6.2
значение имён методов, 6.5.7
имена и идентификаторы, 6.2
значение имён пакетов, 6.5.3
имена и идентификаторы, 6.2
значение имён пакетов или типов, 6.5.4
объявления импорта типов по требованию, 7.5.2
значение имён типов, 6.5.5
имена и идентификаторы, 6.2
объявления типов членов, 8.5, 9.5
@Target, 9.6.4.1, 9.6.4.1
тело класса и объявления членов, 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
форма двоичного, 13.1, 13.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
синтаксическая классификация имени в соответствии с контекстом, 6.5.1, 6.5.1
объявления импорта типов по требованию, 7.5.2, 7.5.2
где используются типы, 4.11, 4.11, 4.11, 4.11
члены и конструкторы параметризованных типов, 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
формальные параметры методов и конструкторов, 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.4.3.1
тело конструктора, 8.8.7
объявления методов, 8.4
нативные методы, 8.4.3.4
this, 15.8.3
объявления методов, 8.4, 9.4
@Target, 9.6.4.1, 9.6.4.1
переменные массивов, 10.2
тело класса и объявления членов, 8.1.6
объявления, 6.1, 6.1, 6.1, 6.1
оценка, обозначение и результат, 15.1
конечные переменные, 4.12.4
наследование, переопределение и скрытие, 8.4.8
тело интерфейса и объявления членов, 9.1.4
сырые типы, 4.8, 4.8
оператор возврата, 14.17
простые имена выражений, 6.5.6.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1, 6.5.1
где используются типы, 4.11, 4.11, 4.11, 4.11
выражения вызова метода, 15.12
безымянные конструкторы, 15.9.5.1, 15.9.5.1
объявление ссылки на метод во время компиляции, 15.13.1
условный оператор ? :, 15.25, 15.25
объявления конструкторов, 8.8
объявления, 6.1
оценка, обозначение и результат, 15.1
анализ исключений выражений, 11.2.1
выражения и проверки во время выполнения, 15.5
инициализация полей, 8.3.2, 8.3.2
формальные параметры, 8.4.1
формы выражений, 15.2
порядок «происходит до», 17.4.5
скрытие (методами класса), 8.4.8.2
начальные значения переменных, 4.12.5
инициализация полей в интерфейсах, 9.3.1
инициализаторы экземпляров, 8.6
контексты вызова, 5.3
вывод типов вызова, 18.5.2, 18.5.2
типы переменных, 4.12.3, 4.12.3
параметры лямбда-выражений, 15.27.1
объявления методов, 8.4
имена и идентификаторы, 6.2
нормальное и прерывистое завершение оценки, 15.6, 15.6
объекты, 4.3.1
перегрузка, 8.4.9
переопределение (методами экземпляра), 8.4.8.1
оператор возврата, 14.17
обработка исключений во время выполнения, 11.3
простые имена методов, 6.5.7.1
статические инициализаторы, 8.7
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
this, 15.8.3
где используются типы, 4.11, 4.11
тип вызова метода, 15.12.2.6
выбор конструктора и его аргументов, 15.9.3, 15.9.3
объявление ссылки на метод во время компиляции, 15.13.1
этап 3 компиляции: подходит ли выбранный метод?, 15.12.3
анализ исключений выражений, 11.2.1, 11.2.1
анализ исключений операторов, 11.2.2
ограничения совместимости выражений, 18.2.1
вывод типов вызова, 18.5.2
ограничения совместимости типов, 18.2.2
тип ссылки на метод, 15.13.2
модификаторы методов, 8.4.3
@Target, 9.6.4.1
объявления методов, 8.4
объекты, 4.3.1
переопределение метода, 13.4.24
выражения ссылки на метод, 15.13
доступ к защищенному члену, 6.6.2.1
объявления, 6.1
выражения и проверки во время выполнения, 15.5, 15.5
форма двоичного файла, 13.1
формы выражений, 15.2, 15.2
функциональные интерфейсы, 9.8
определение потенциально подходящих методов, 15.12.2.1
имена и идентификаторы, 6.2
синтаксическая классификация имени в зависимости от контекста, 6.5.1, 6.5.1, 6.5.1
где используются типы, 4.11, 4.11, 4.11
результат метода, 8.4.5
абстрактные классы, 8.1.1.1
абстрактные методы, 8.4.3.1
переменные массивов, 10.2
литералы классов, 15.8.2
объявления конструкторов, 8.8
типы функций, 9.9
функциональные интерфейсы, 9.8
тело метода интерфейса, 9.4.3
тело метода, 8.4.7
объявления методов, 8.4
требования при переопределении и скрытии, 8.4.8.3
оператор возврата, 14.17
стирание типов, 4.6
где используются типы, 4.11
тип результата метода, 13.4.15
объявления методов интерфейса, 13.5.6
Подпись метода, 8.4.2
абстрактные классы, 8.1.1.1
абстрактные методы, 8.4.3.1
выбор наиболее специфичного метода, 15.12.2.5
Подпись конструктора, 8.8.2
форма двоичного представления, 13.1
функциональные интерфейсы, 9.8
скрытие (методами класса), 8.4.8.2
наследование и переопределение, 9.4.1
наследование, переопределение и скрытие, 8.4.8, 8.4.8
наследование методов с подписью, эквивалентной переопределению, 8.4.8.4, 9.4.1.3
члены интерфейса, 9.2
декларации методов, 8.4, 9.4
результат метода, 8.4.5
перегрузка, 9.4.2
переопределение (методами экземпляра), 8.4.8.1, 8.4.8.1, 9.4.1.1
требования при переопределении и скрытии, 8.4.8.3
стирание типов, 4.6
Исключения методов, 8.4.6
абстрактные методы, 8.4.3.1
проверка исключений во время компиляции, 11.2
исключения конструкторов, 8.8.5
декларации, 6.1
декларации методов, 8.4
синтаксическая классификация имени в зависимости от контекста, 6.5.1
оператор throw, 14.18
где используются типы, 4.11, 4.11
Вывод более специфичных методов, 18.5.4
выбор наиболее специфичного метода, 15.12.2.5
Несколько аннотаций одного типа, 9.7.5
типы аннотаций, 9.6
аннотации, 9.7
модификаторы класса, 8.1.1
модификаторы конструктора, 8.8.3
постоянные значения перечислений, 8.9.1
декларации полей (констант), 9.3
модификаторы полей, 8.3.1
формальные параметры, 8.4.1
обобщенные классы и параметры типа, 8.1.2
обобщенные интерфейсы и параметры типа, 9.1.2
модификаторы интерфейсов, 9.1.1
параметры лямбда-выражений, 15.27.1
операторы объявления локальных переменных, 14.4
декларации методов, 9.4
модификаторы методов, 8.4.3
именованные пакеты, 7.4.1
Оператор умножения *, 15.17.1
Операторы умножения, 15.17
двоичное числовое продвижение, 5.6.2
постоянные выражения, 15.28
операции с плавающей точкой, 4.2.4
формы выражений, 15.2
операции с целыми числами, 4.2.2

N

Классификация имен, 6.5.1
Управление доступом, 6.6
Объявления, 6.1
Типы и значения ссылок, 4.3
Переклассификация имен, 6.5.2
Выражения вызова методов, 15.12
Именованные пакеты, 7.4.1
@Target, 9.6.4.1
Имена, 6
Имена и идентификаторы, 6.2
Объявление ссылки на метод во время компиляции, 15.13.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
Тело метода, 8.4.7
Ключевое слово new, 15.9
Условный оператор ? :, 15.25, 15.25
Объявления конструкторов, 8.8, 8.8
Перегрузка конструкторов, 8.8.8
Создание новых экземпляров классов, 12.5
Анализ исключений в выражениях, 11.2.1
Форма двоичного кода, 13.1
Формы выражений, 15.2
Функциональные интерфейсы, 9.8
Начальные значения переменных, 4.12.5, 4.12.5
Инициализаторы экземпляров, 8.6
Контексты вызова, 5.3
Выведение типа вызова, 18.5.2, 18.5.2
Типы переменных, 4.12.3
Выражения ссылок на методы, 15.13
Имена и идентификаторы, 6.2
Объекты, 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
Использование типов, 4.11, 4.11, 4.11, 4.11
Неатомарная обработка double и long, 17.7
Нормальное и внезапное завершение вычислений, 15.6
Причины возникновения исключений, 11.1.2
Нормальное и внезапное завершение операторов, 14.1, 14.1
Обработка исключений во время выполнения, 11.3
Нормальное и внезапное завершение операторов, 14.1
Тело метода интерфейса, 9.4.3
Тело метода, 8.4.7
Нормальное и внезапное завершение вычислений, 15.6
Обработка исключений во время выполнения, 11.3
Нормальные аннотации, 9.7.1
Аннотации, 9.7
Значения по умолчанию для элементов аннотации, 9.6.2
Имена и идентификаторы, 6.2
Синтаксическая классификация имени в зависимости от контекста, 6.5.1
Нотация, 1.3
Уведомление, 17.2.2
Литерал null, 3.10.7
Шаг 3 компиляции: подходит ли выбранный метод?, 15.12.3
Идентификаторы, 3.8
Типы и значения, 4.1
Лексические литералы, 15.8.1
Числовые условные выражения, 15.25.2
Числовые контексты, 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

О

создание объекта, 12.5
объявления конструкторов, 8.8
инициализация полей, 8.3.2
форма двоичного кода, 13.1
инициализаторы экземпляров, 8.6
вычисление выражения создания экземпляра класса во время выполнения, 15.9.4
статические поля, 8.3.1.1
оператор конкатенации строк +, 15.18.1
время инициализации, 12.4.1
объекты, 4.3.1, 4.3.2
проверка преобразований во время выполнения, 5.5.3, 5.5.3
тип вызова метода, 15.12.2.6
строковые литералы, 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.12.2, 15.12.2.1, 15.12.2.2, 15.12.2.3, 15.12.2.4, 15.12.2.5
выбор конструктора и его аргументов, 15.9.3, 15.9.3, 15.9.3
выбор наиболее специфичного метода, 15.12.2.5
объявление метода-ссылка во время компиляции, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1
шаг 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
условный оператор ? :, 15.25, 15.25
константы перечисления, 8.9.1
вывод применимости вызова, 18.5.1, 18.5.1
вывод типа вызова, 18.5.2
перегрузка методов и конструкторов, 13.4.23
вывод более специфичного метода, 18.5.4, 18.5.4, 18.5.4, 18.5.4, 18.5.4
перегрузка, 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, 15.12.2.3
этап 3: определение методов, применимых по вызову с переменным числом аргументов, 15.12.2.4, 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.2
нахождение метода для вызова, 15.12.4.4
суперинтерфейсы, 8.1.5

P

Декларации пакетов, 7.4
единицы компиляции, 7.3
декларации, 6.1
Члены пакета, 7.1
Пакеты, 7
Параметризованные типы, 4.5
элементы типа аннотации, 9.6.1
преобразование захвата, 5.1.10, 5.1.10
проверяемые и непроверяемые преобразования приведения типов, 5.5.2
литералы классов, 15.8.2
декларации, 6.1
определение класса, который инициализируется, 15.9.1
декларации полей, 13.4.8
функциональные интерфейсы, 9.8
обобщенные классы и параметры типа, 8.1.2
обобщенные интерфейсы и параметры типа, 9.1.2
формальные параметры методов и конструкторов, 13.4.14
выражения ссылок на методы, 15.13
тип возвращаемого значения метода, 13.4.15
обычные аннотации, 9.7.1
сырые типы, 4.8
приведение типов ссылок, 5.5.1
типы ссылок и значения, 4.3
суперклассы и подклассы, 8.1.4
суперинтерфейсы, 8.1.5
суперинтерфейсы и подинтерфейсы, 9.1.3
стирание типов, 4.6
типы, классы и интерфейсы, 4.12.6
где используются типы, 4.11
Выражения в скобках, 15.8.5
условный оператор ? :, 15.25, 15.25
константные выражения, 15.28
формы выражений, 15.2
определить потенциально применимые методы, 15.12.2.1
этап 1: определить методы с совпадающей арностью, применимые по строгому вызову, 15.12.2.2
Этап 1: определить методы с совпадающей арностью, применимые по строгому вызову, 15.12.2.2
декларация ссылки на метод во время компиляции, 15.13.1, 15.13.1, 15.13.1, 15.13.1, 15.13.1
этап 2 компиляции: определить сигнатуру метода, 15.12.2, 15.12.2
вывод применимости вызова, 18.5.1
вывод более специфичного метода, 18.5.4
этап 2: определить методы с совпадающей арностью, применимые по свободному вызову, 15.12.2.3
этап 3: определить методы, применимые по вызову с переменной арностью, 15.12.2.4
Этап 2: определить методы с совпадающей арностью, применимые по свободному вызову, 15.12.2.3
декларация ссылки на метод во время компиляции, 15.13.1, 15.13.1
этап 2 компиляции: определить сигнатуру метода, 15.12.2, 15.12.2
вывод более специфичного метода, 18.5.4
этап 1: определить методы с совпадающей арностью, применимые по строгому вызову, 15.12.2.2
Этап 3: определить методы, применимые по вызову с переменной арностью, 15.12.2.4
выбор конструктора и его аргументов, 15.9.3
выбор наиболее специфичного метода, 15.12.2.5
декларация ссылки на метод во время компиляции, 15.13.1, 15.13.1
этап 2 компиляции: определить сигнатуру метода, 15.12.2, 15.12.2
вывод применимости вызова, 18.5.1
вывод типа вызова, 18.5.2
вывод более специфичного метода, 18.5.4
этап 2: определить методы с совпадающей арностью, применимые по свободному вызову, 15.12.2.3
Полиморфные выражения, 15.2
булевы условные выражения, 15.25.1
выбор наиболее специфичного метода, 15.12.2.5
выражения создания экземпляров класса, 15.9
условный оператор ? :, 15.25, 15.25
ограничения совместимости выражений, 18.2.1, 18.2.1
определить потенциально применимые методы, 15.12.2.1
лямбда-выражения, 15.27
выражения ссылок на методы, 15.13
вывод более специфичного метода, 18.5.4
числовые условные выражения, 15.25.2
выражения в скобках, 15.8.5
Оператор постфиксного декремента --, 15.14.3
операции с плавающей точкой, 4.2.4, 4.2.4
целочисленные операции, 4.2.2, 4.2.2
нормальное и прерывистое завершение оценки, 15.6
операторы ++ и --, 16.1.9
переменные, 4.12
Выражения постфикса, 15.14
конечные переменные, 4.12.4
формы выражений, 15.2
синтаксическая классификация имени в зависимости от контекста, 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
возможно применимые методы, 15.12.2.1
объявление метода-ссылка во время компиляции, 15.13.1, 15.13.1, 15.13.1
шаг 1 компиляции: определение класса или интерфейса для поиска, 15.12.1
шаг 2 компиляции: определение подписи метода, 15.12.2
этап 1: идентификация методов с совпадающей арностью, применимых по строгому вызову, 15.12.2.2
этап 2: идентификация методов с совпадающей арностью, применимых по свободному вызову, 15.12.2.3
этап 3: идентификация методов, применимых по вызову с переменной арностью, 15.12.2.4
предопределённые типы аннотаций, 9.6.4
префиксный оператор декремента --, 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
объявления конструкторов, 8.8
основные выражения, 15.8
доступ к защищённому члену, 6.6.2.1
формы выражений, 15.2
постфиксные выражения, 15.14
примитивные типы и значения, 4.2
литералы класса, 15.8.2
условный оператор ? :, 15.25
вычисление, обозначение и результат, 15.1
виды типов и значений, 4.1
литералы, 3.10
реализуемые типы, 4.7
распаковка преобразования, 5.1.8
переменные, 4.12
где используются типы, 4.11
выход из программы, 12.8
программы и порядок выполнения программы, 17.4.3
порядок «происходит-перед», 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
члены и конструкторы параметризованных типов, 4.5.2
квалифицированные имена пакетов, 6.5.3.2
квалифицированные имена пакетов или типов, 6.5.4.2
квалифицированное this, 15.8.4
объявления, 6.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
квалифицированные имена типов, 6.5.5.2
контроль доступа, 6.6
члены и конструкторы параметризованных типов, 4.5.2
объявления одиночного статического импорта, 7.5.3
объявления одиночного импорта типа, 7.5.1
объявления статического импорта по умолчанию, 7.5.4
объявления импорта типа по умолчанию, 7.5.2

R

Необработанные типы, 4.8
контексты присваивания, 5.2
функциональные интерфейсы, 9.8
контексты вызова, 5.3
выражения ссылок на методы, 15.13
реализуемые типы, 4.7
подтипирование между типами классов и интерфейсов, 4.10.2
аргументы типа параметризованных типов, 4.5.1
преобразование без проверок, 5.1.9
переменные ссылочного типа, 4.12.2
где используются типы, 4.11
чтение конечных полей во время создания, 17.5.2
переклассификация контекстуально неоднозначных имён, 6.5.2
выражения вызова методов, 15.12
сокращение, 18.2
вывод применимости вызова, 18.5.1
условные выражения ссылок, 15.25.3
операторы равенства ссылок == и !=, 15.21.3
объекты, 4.3.1
приведение типов ссылок, 5.5.1
контексты приведения, 5.5
справочные типы и значения, 4.3
литералы классов, 15.8.2
оценка, обозначение и результат, 15.1
начальные значения переменных, 4.12.5
виды типов и значений, 4.1
переменные, 4.12
ссылки, 1.6
реализуемые типы, 4.7
@SafeVarargs, 9.6.4.7
выражения создания массивов, 15.10.1
инициализаторы массивов, 10.6
выражения и проверки во время выполнения, 15.5, 15.5
формальные параметры, 8.4.1
выражения ссылок на методы, 15.13
оператор сравнения типов 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.6.3
@Repeatable, 9.6.4.8
эволюция типов аннотаций, 13.5.7
множественные аннотации одного типа, 9.7.5
требования при переопределении, 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
тип лямбда-выражения, 15.27.3
тип ссылки на метод, 15.13.2
переменные ссылочного типа, 4.12.2
разрешение, 18.4
вывод применимости вызова, 18.5.1
вывод типа вызова, 18.5.2
разрешение символических ссылок, 12.3.3
тест ссылки: верификация, подготовка, (по желанию) разрешение, 12.1.2
оператор возврата, 14.17
операторы break, continue, return и throw, 16.2.13
тело конструктора, 8.8.7, 8.8.7
инициализаторы экземпляров, 8.6
тело метода интерфейса, 9.4.3
тело метода, 8.4.7
нормальное и прерывистое завершение операторов, 14.1
статические инициализаторы, 8.7
вычисление выражений доступа к массивам во время выполнения, 15.10.4
доступ к массиву, 10.4
порядок вычисления других выражений, 15.7.5
нормальное и прерывистое завершение вычисления, 15.6, 15.6
вычисление выражений создания массивов во время выполнения, 15.10.2
порядок вычисления других выражений, 15.7.5
начальные значения переменных, 4.12.5
виды переменных, 4.12.3
нормальное и внезапное завершение вычисления, 15.6, 15.6
вычисление выражений создания экземпляров классов во время выполнения, 15.9.4
порядок вычисления других выражений, 15.7.5
нормальное и внезапное завершение вычисления, 15.6
оператор throw, 14.18
вычисление лямбда-выражений во время выполнения, 15.27.4
создание новых экземпляров классов, 12.5
порядок вычисления других выражений, 15.7.5
нормальное и внезапное завершение вычисления, 15.6
вычисление вызова метода во время выполнения, 15.12.4
порядок вычисления других выражений, 15.7.5
перегрузка, 8.4.9
вычисление ссылок на методы во время выполнения, 15.13.3
создание новых экземпляров классов, 12.5
порядок вычисления других выражений, 15.7.5
нормальное и внезапное завершение вычисления, 15.6
обработка исключений во время выполнения, 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
объявления полей (констант), 9.3
объявления полей, 8.3
формальные параметры, 8.4.1
встречные ссылки во время инициализации поля, 8.3.3
обобщённые классы и параметры типа, 8.1.2
обобщённые конструкторы, 8.8.4
обобщённые интерфейсы и параметры типа, 9.1.2
обобщённые методы, 8.4.4
объявления импорта, 7.5
тело интерфейса и объявления членов, 9.1.4
объявления интерфейсов, 9.1
параметры лямбда-выражений, 15.27.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
семантика final полей, 17.5.1
разделители, 3.11
лексическая грамматика, 2.2
затенение, 6.4.1
этап компиляции 1: определение класса или интерфейса для поиска, 15.12.1
затенение, 6.4.2
область действия объявления, 6.3
простые имена выражений, 6.5.6.1
затенение и затемнение, 6.4
базовый цикл for, 14.14.1
тело класса и объявления членов, 8.1.6
объявления классов, 8.1
расширенный цикл for, 14.14.2
постоянные перечисления, 8.9.1
объявления полей (констант), 9.3
объявления полей, 8.3
формальные параметры, 8.4.1
обобщённые классы и параметры типа, 8.1.2
обобщённые конструкторы, 8.8.4
объявления импорта, 7.5
объявления интерфейсов, 9.1
параметры лямбда-выражений, 15.27.1
объявления локальных классов, 14.3
объявители локальных переменных и типы, 14.4.1
объявления типов-членов, 8.5
объявления методов, 8.4
именованные пакеты, 7.4.1
операторы 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
объявления методов, 8.4
простые имена пакетов, 6.5.3.1
простые имена пакетов или типов, 6.5.4.1
простые имена типов, 6.5.5.1
аннотации с одним элементом, 9.7.3
элементы типа аннотации, 9.6.1
аннотации, 9.7
объявления single-static-import, 7.5.3
объявления, 6.1, 6.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, 6.1
объявления импорта, 7.5
переклассификация контекстуально неоднозначных имен, 6.5.2
область видимости объявления, 6.3
объявления single-static-import, 7.5.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
остановка и уступка, 17.3
самостоятельные выражения, 15.2
булевы условные выражения, 15.25.1
выбор наиболее конкретного метода, 15.12.2.5
выражения создания экземпляров классов, 15.9
условный оператор ? :, 15.25, 15.25
ограничения совместимости выражений, 18.2.1, 18.2.1
определение потенциально применимых методов, 15.12.2.1
лямбда-выражения, 15.27
выражения ссылок на методы, 15.13
более конкретный вывод методов, 18.5.4
числовые условные выражения, 15.25.2
выражения в скобках, 15.8.5
операторы, 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
оператор return, 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
статические методы, 8.4.3.2, 13.4.19
обобщенные классы и параметры типов, 8.1.2
объявления методов интерфейса, 13.5.6
простые имена выражений, 6.5.6.1
объявления static-import-on-demand, 7.5.4
объявления, 6.1, 6.1
определение потенциально применимых методов, 15.12.2.1
объявления импорта, 7.5
переклассификация контекстуально неоднозначных имен, 6.5.2, 6.5.2
область видимости объявления, 6.3
простые имена методов, 6.5.7.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
объявления type-import-on-demand, 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.4
булевый тип и булевы значения, 4.2.5
преобразование строк, 5.1.11
оператор конкатенации строк +, 15.18.1
контексты строк, 5.4
строковые литералы, 3.10.5
класс String, 4.3.3
комментарии, 3.7
константные выражения, 15.28
создание новых экземпляров классов, 12.5
последовательности экранирования для символьных и строковых литералов, 3.10.6
лексические литералы, 15.8.1
операторы равенства ссылок == и !=, 15.21.3
unicode, 3.1
строки, 4.3.3
лексические литералы, 15.8.1
литералы, 3.10
объекты, 4.3.1
строковые литералы, 3.10.5, 3.10.5
последующее изменение конечных полей, 17.5.3
подтипирование, 4.10
контексты присваивания, 5.2
проверенные и непроверенные преобразования типов, 5.5.2
выбор наиболее специфического метода, 15.12.2.5
формулы ограничений, 18.1.2
контексты вызова, 5.3
брошенные исключения метода, 8.4.6
сужение преобразования ссылочных типов, 5.1.6
параметризованные типы, 4.5
ограничения по подтипированию, 18.2.3
аргументы типов параметризованных типов, 4.5.1, 4.5.1
расширение преобразования ссылочных типов, 5.1.5
подтипирование среди массивов, 4.10.3
массивы, 10.1
подтипирование среди типов классов и интерфейсов, 4.10.2
оператор try, 14.20
подтипирование среди примитивных типов, 4.10.1
ограничения по подтипированию, 18.2.3
суперклассы и подклассы, 8.1.4
члены класса, 8.2
класс Object, 4.3.2
перечисления, 8.9
конечные классы, 8.1.1.2
виды переменных, 4.12.3
процесс загрузки, 12.2.1
подтипирование среди классов и интерфейсов, 4.10.2
синтаксическая классификация имени в зависимости от контекста, 6.5.1
место использования типов, 4.11, 4.11
суперклассы и суперинтерфейсы, 13.4.4
процесс загрузки, 12.2.1
суперинтерфейсы, 13.5.2
верификация двоичного представления, 12.3.1
суперинтерфейсы, 8.1.5, 13.5.2
проверка типов во время выполнения, 5.5.3
члены класса, 8.2
подтипирование среди классов и интерфейсов, 4.10.2
суперинтерфейсы и подинтерфейсы, 9.1.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
типы, классы и интерфейсы, 4.12.6
время инициализации, 12.4.1
место использования типов, 4.11, 4.11
суперинтерфейсы и подинтерфейсы, 9.1.3
члены интерфейса, 9.2
процесс загрузки, 12.2.1
подтипирование среди классов и интерфейсов, 4.10.2
суперклассы и подклассы, 8.1.4
суперинтерфейсы, 8.1.5
синтаксическая классификация имени в зависимости от контекста, 6.5.1
место использования типов, 4.11, 4.11
оператор switch, 14.11
объём объявления, 6.3, 6.3
операторы switch, 16.2.9
операторы switch, 16.2.9
синхронизация, 17.1
объекты, 4.3.1
синхронизированные методы, 8.4.3.6
оператор synchronized, 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
оператор synchronized, 14.19
оператор synchronized, 14.19
создание фрейма, синхронизация, передача управления, 15.12.4.5
объекты, 4.3.1
синхронизация, 17.1
операторы synchronized, 16.2.14
операторы synchronized, 16.2.14
синтаксическая классификация имени в зависимости от контекста, 6.5.1
контроль доступа, 6.6
объявления, 6.1
ссылочные типы и значения, 4.3
синтаксическая грамматика, 2.3
единицы компиляции, 7.3
элементы и токены ввода, 3.5
лексические преобразования, 3.2
синтаксис, 19

Т

this, 15.8.3
инициализация поля, 8.3.2, 8.3.2
инициализация полей в интерфейсах, 9.3.1
инициализаторы экземпляров, 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
переменные transient, 8.3.1.3, 13.4.11
оператор try, 14.20
@Target, 9.6.4.1
проверка исключений на этапе компиляции, 11.2
объявления, 6.1, 6.1
определённое присваивание и параметры, 16.3
анализ исключений операторов, 11.2.2
выражения и проверки во время выполнения, 15.5, 15.5
постоянные переменные, 4.12.4, 4.12.4
начальные значения переменных, 4.12.5
виды переменных, 4.12.3
метки операторов, 14.7
исключения методов, 8.4.6
переклассификация контекстно-неоднозначных имен, 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
где используются типы, 4.11, 4.11
операторы try, 16.2.15
оператор try-catch, 14.20.1
оператор try, 14.20
оператор try-catch-finally, 14.20.2
оператор try, 14.20
оператор try-finally, 14.20.2
оператор try, 14.20
оператор try-with-resources, 14.20.3
@Target, 9.6.4.1
постоянные переменные, 4.12.4
операторы объявления локальных переменных, 14.4
область видимости объявления, 6.3
синтаксическая классификация имени в зависимости от контекста, 6.5.1
оператор try, 14.20
где используются типы, 4.11
оператор try-with-resources (основной), 14.20.3.1
оператор try-with-resources (расширенный), 14.20.3.2
аргументы типа параметров типизированных типов, 4.5.1
преобразование захвата, 5.1.10
проверки приведения типов и непроверяемые приведения типов, 5.5.2
выражения создания экземпляров класса, 15.9, 15.9
формулы ограничений, 18.1.2
явные вызовы конструкторов, 8.8.7.1
выражения вызова методов, 15.12
выражения ссылки на метод, 15.13
типы ссылок и значения, 4.3
реализуемые типы, 4.7
супертипизация между типами класса и интерфейса, 4.10.2
ограничения суперобработки, 18.2.3
ограничения равенства типов, 18.2.4
типы, классы и интерфейсы, 4.12.6
непроверяемое преобразование, 5.1.9
где используются типы, 4.11
оператор сравнения типов instanceof, 15.20.2
выражения и проверки во время выполнения, 15.5
объекты, 4.3.1
синтаксическая классификация имени в зависимости от контекста, 6.5.1
где используются типы, 4.11, 4.11
ограничения совместимости типов, 18.2.2
ограничения равенства типов, 18.2.4
стирание типов, 4.6
контексты присваивания, 5.2
выражения приведения типа, 15.16
проверяемые и непроверяемые приведения типов, 5.5.2
проверка приведений типов во время выполнения, 5.5.3
выбор наиболее специфичного метода, 15.12.2.5
класс Object, 4.3.2
параметры типа класса, 13.4.5
шаг 3 компиляции: подходит ли выбранный метод?, 15.12.3
Подпись конструктора, 8.8.2
создание стекового кадра, синхронизация, передача управления, 15.12.4.5
объявления, 6.1
оценка аргументов, 15.12.4.2
объявления полей, 13.4.8
форма бинарного файла, 13.1, 13.1, 13.1
контексты вызова, 5.3
формальные параметры метода и конструктора, 13.4.14
параметры типа метода и конструктора, 13.4.13
тип вызова метода, 15.12.2.6
тип результата метода, 13.4.15
Подпись метода, 8.4.2
сырые типы, 4.8
требования при переопределении и скрытии, 8.4.8.3
переменные типа, 4.4
вывод типов, 18
шаг 2 компиляции: определение Подписи метода, 15.12.2
генерические конструкторы, 8.8.4
генерические методы, 8.4.4
тип конструктора, 8.8.6
члены и конструкторы параметризованных типов, 4.5.2
тип лямбда-выражения, 15.27.3
ограничения обработанных исключений, 18.2.5
ограничения совместимости выражений, 18.2.1
вывод типов вызова, 18.5.2, 18.5.2
параметры лямбда-выражений, 15.27.1
тип ссылки на метод, 15.13.2
ограничения обработанных исключений, 18.2.5
тип выражения, 15.3
переменные типов, 4.4
литералы классов, 15.8.2
объявления полей, 13.4.8
генерические классы и параметры типа, 8.1.2
генерические конструкторы, 8.8.4
генерические интерфейсы и параметры типа, 9.1.2
генерические методы, 8.4.4
пересекающиеся типы, 4.9
формальные параметры метода и конструктора, 13.4.14
тип результата метода, 13.4.15
типы ссылок и значения, 4.3
стирание типов, 4.6
типы, классы и интерфейсы, 4.12.6
где используются типы, 4.11
объявления импорта типов по требованию, 7.5.2
объявления, 6.1
объявления импорта, 7.5
переклассификация контекстуально неоднозначных имен, 6.5.2
область действия объявления, 6.3
затенение, 6.4.1
объявления статического импорта по требованию, 7.5.4
синтаксическая классификация имени в зависимости от контекста, 6.5.1
типы, 4.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.10.3
выражения создания массива, 15.10.1
операция поразрядного дополнения ~, 15.15.5
числовые контексты, 5.6
операторы сдвига, 15.19
унарный минус оператор -, 15.15.4
унарный плюс оператор +, 15.15.3
унарные операторы, 15.15
конечные переменные, 4.12.4
унарный плюс оператор +, 15.15.3
константные выражения, 15.28
операции с плавающей точкой, 4.2.4
целочисленные операции, 4.2.2
унарное числовое продвижение, 5.6.1
распаковка преобразования, 5.1.8
аддитивные операторы, 15.18, 15.18
выражения создания массива, 15.10.1
утверждение 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
контексты вызова, 5.3
итерация оператора for, 14.14.1.2
логический оператор дополнения !, 15.15.6
мультипликативные операторы, 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
преобразование без проверки, 5.1.9
@SafeVarargs, 9.6.4.7
контексты присваивания, 5.2
контексты приведения типов, 5.5, 5.5
контексты вызова, 5.3
результат метода, 8.4.5
ограничения совместимости типов, 18.2.2
переменные ссылочного типа, 4.12.2
unicode, 3.1
литералы символов, 3.10.4
лексическая грамматика, 2.2
примитивные типы и значения, 4.2
unicode escapes, 3.3
unicode escapes, 3.3
последовательности escape для литералов символов и String, 3.10.6
элементы ввода и токены, 3.5
лексические преобразования, 3.2
unicode, 3.1
выгрузка классов и интерфейсов, 12.7
виды переменных, 4.12.3
безымянные пакеты, 7.4.2
единицы компиляции, 7.3
недостижимые операторы, 14.21
конечные поля и статические константные переменные, 13.4.9
инициализаторы экземпляров, 8.6
тело лямбды, 15.27.2
статические инициализаторы, 8.7
использование вывода типов, 18.5

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
выражения с точным представлением с плавающей точкой, 15.4
контексты вызова, 5.3
оператор простого присваивания =, 15.26.1, 15.26.1
унарный минус-оператор -, 15.15.4
унарное повышение числового типа, 5.6.1
переменные, 4.12
вычисление, обозначение и результат, 15.1
переменные примитивного типа, 4.12.1
переменные ссылочного типа, 4.12.2
@SafeVarargs, 9.6.4.7
тип выражения, 15.3
переменные, 4.12
верификация двоичного представления, 12.3.1
проверка ссылки: верификация, подготовка, (при необходимости) разрешение, 12.1.2
переменные volatile, 8.3.1.4
порядок «происходит до», 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
формулы ограничений, 18.1.2
ограничения равенства типов, 18.2.4
где могут появиться аннотации, 9.7.4
типы аннотаций, 9.6
аннотации, 9.7
типы массивов, 10.1
модификаторы класса, 8.1.1
модификаторы конструкторов, 8.8.3
константы перечислений, 8.9.1
объявления полей (констант), 9.3
модификаторы полей, 8.3.1
формальные параметры, 8.4.1
обобщённые классы и параметры типов, 8.1.2
обобщённые интерфейсы и параметры типов, 9.1.2
модификаторы интерфейсов, 9.1.1
параметры лямбда-выражений, 15.27.1
операторы объявления локальных переменных, 14.4
объявления методов, 9.4
модификаторы методов, 8.4.3
именованные пакеты, 7.4.1
где используются типы, 4.11
@Target, 9.6.4.1
лексические преобразования, 3.2
синтаксическая классификация имени в зависимости от контекста, 6.5.1
где могут появиться аннотации, 9.7.4
оператор while, 14.12
булевый тип и булевы значения, 4.2.5
операторы while, 16.2.10
операторы while, 16.2.10
пробелы, 3.6
элементы ввода и токены, 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.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, 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