Symbols
- =
operator, 15.26.1
-
- assignment contexts, 5.2
- expressions and run-time checks, 15.5, 15.5
- normal and abrupt completion of evaluation, 15.6,
15.6
-
@Deprecated, <IP_ADDRESS>
-
@FunctionalInterface, <IP_ADDRESS>
-
@Inherited, <IP_ADDRESS>
-
@Override, <IP_ADDRESS>
-
@Repeatable, <IP_ADDRESS>
-
- repeatable annotation types, 9.6.3
-
@Retention, <IP_ADDRESS>
-
- repeatable annotation types, 9.6.3
-
@SafeVarargs, <IP_ADDRESS>
-
- formal parameters, 8.4.1
-
@SuppressWarnings, <IP_ADDRESS>
-
- checked casts and unchecked casts, 5.5.2
- formal parameters, 8.4.1
- requirements in overriding and hiding, <IP_ADDRESS>
- unchecked conversion, 5.1.9
-
@Target, <IP_ADDRESS>
-
- multiple annotations of the same type, 9.7.5
- repeatable annotation types, 9.6.3
- where annotations may appear, 9.7.4
A
- abrupt
completion of do statement, 14.13.1
-
- do statement, 14.13
- abrupt
completion of for statement, <IP_ADDRESS>
-
- iteration of for statement, <IP_ADDRESS>
- abrupt
completion of while statement, 14.12.1
-
- while statement, 14.12
-
abstract classes, <IP_ADDRESS>, 13.4.1
-
- abstract methods, <IP_ADDRESS>
- anonymous class declarations, 15.9.5
- array creation expressions, 15.10.1
- final classes, <IP_ADDRESS>
- superinterfaces, 8.1.5
-
abstract interfaces, <IP_ADDRESS>
-
abstract methods, <IP_ADDRESS>, 13.4.16
-
- abstract classes, <IP_ADDRESS>
- method body, 8.4.7
- method declarations, 9.4
- access
control, 6.6
-
- accessing superclass members using super, 15.11.2
- class literals, 15.8.2
- class modifiers, 8.1.1
- constructor declarations, 8.8
- default constructor, 8.8.9
- enum body declarations, 8.9.2
- explicit constructor invocations, <IP_ADDRESS>
- field access using a primary, 15.11.1
- identify potentially applicable methods, <IP_ADDRESS>
- import declarations, 7.5
- interface modifiers, 9.1.1
- local class declarations, 14.3
- member type declarations, 8.5
- method declarations, 9.4
- normal annotations, 9.7.1
- objects, 4.3.1
- qualified expression names, <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>
- qualified type names, <IP_ADDRESS>, <IP_ADDRESS>
- reference types and values, 4.3
- requirements in overriding and hiding, <IP_ADDRESS>
- single-static-import declarations, 7.5.3
- single-type-import declarations, 7.5.1
- static-import-on-demand declarations, 7.5.4
- superclasses and subclasses, 8.1.4
- superinterfaces, 8.1.5
- superinterfaces and subinterfaces, 9.1.3
- type-import-on-demand declarations, 7.5.2
- access
to a protected member, <IP_ADDRESS>
- access
to members and constructors, 13.4.7
-
accessing superclass members using super, 15.11.2
-
- declarations, 6.1
- field declarations, 8.3
- field initialization, 8.3.2, 8.3.2
- initialization of fields in interfaces, 9.3.1
- instance initializers, 8.6
- static methods, <IP_ADDRESS>
- syntactic classification of a name according to context, 6.5.1
-
actions, 17.4.2
-
- synchronization order, 17.4.4
-
additive operators, 15.18
-
- constant expressions, 15.28
- integer operations, 4.2.2
-
additive operators (+ and -) for numeric types, 15.18.2
-
- binary numeric promotion, 5.6.2
- floating-point operations, 4.2.4
- an
array of characters is not a String, 10.9
-
annotation type elements, 9.6.1
-
- @Target, <IP_ADDRESS>
- annotation types, 9.6
- declarations, 6.1, 6.1, 6.1
- marker annotations, 9.7.2
- normal annotations, 9.7.1
- single-element annotations, 9.7.3
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11
-
annotation types, 9.6
-
- @Target, <IP_ADDRESS>
- annotations, 9.7
- declarations, 6.1
- interface declarations, 9.1
-
annotations, 9.7
-
- declarations, 6.1
- defaults for annotation type elements, 9.6.2
- syntactic classification of a name according to context, 6.5.1
-
anonymous class declarations, 15.9.5
-
- class instance creation
expressions, 15.9, 15.9
- class modifiers, 8.1.1
- definite assignment and anonymous classes, 16.6
- enum constants, 8.9.1
- form of a binary, 13.1
- initialization of fields in interfaces, 9.3.1
- inner classes and enclosing instances, 8.1.3
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11, 4.11
-
anonymous constructors, <IP_ADDRESS>
-
- choosing the constructor and its arguments, 15.9.3
- default constructor, 8.8.9
- form of a binary, 13.1
-
argument lists are evaluated left-to-right, 15.7.4
- array
access, 10.4
- array
access expressions, 15.10.3
-
- array access, 10.4
- assignment operators, 15.26
- compound assignment operators, 15.26.2
- simple assignment operator =, 15.26.1
- syntactic classification of a name according to context, 6.5.1
- unary numeric promotion, 5.6.1
- array
creation, 10.3
- array
creation and access expressions, 15.10
-
- method reference expressions, 15.13
- array
creation expressions, 15.10.1
-
- array creation, 10.3
- array initializers, 10.6
- objects, 4.3.1
- syntactic classification of a name according to context, 6.5.1
- unary numeric promotion, 5.6.1
- where types are used, 4.11, 4.11
- array
initializers, 10.6
-
- array creation, 10.3
- definite assignment and array initializers, 16.4
- normal and abrupt completion of evaluation, 15.6
- objects, 4.3.1
- run-time evaluation of array creation expressions, 15.10.2
- array
members, 10.7
-
- declarations, 6.1, 6.1
- happens-before order, 17.4.5
- qualified expression names, <IP_ADDRESS>
- array
store exception, 10.5
-
- array variables, 10.2
- assignment contexts, 5.2
- expressions and run-time checks, 15.5, 15.5
- normal and abrupt completion of evaluation, 15.6
- variables, 4.12
- array
types, 10.1
-
- annotation type elements, 9.6.1
- enhanced for statement, 14.14.2
- raw types, 4.8
- reference types and values, 4.3
- reifiable types, 4.7
- where types are used, 4.11
- array
variables, 10.2
-
- enhanced for statement, 14.14.2
- field (constant) declarations, 9.3
- field declarations, 8.3
- formal parameters, 8.4.1, 8.4.1, 8.4.1
- lambda parameters, 15.27.1, 15.27.1, 15.27.1
- local variable declarators and types, 14.4.1
- method result, 8.4.5
-
arrays, 10
-
- array creation expressions, 15.10.1
- kinds of variables, 4.12.3
- when reference types are the same, 4.3.4
- assert
statement, 14.10
-
- assert statements, 16.2.8
- detailed initialization procedure, 12.4.2
- when initialization occurs, 12.4.1
- assert
statements, 16.2.8
-
assignment contexts, 5.2
-
- array initializers, 10.6
- array store exception, 10.5
- array variables, 10.2
- class instance creation
expressions, 15.9
- execution of try-catch, 14.20.1
- expressions and run-time checks, 15.5, 15.5
- kinds of types and values, 4.1
- lambda expressions, 15.27
- method invocation expressions, 15.12
- method reference expressions, 15.13
- normal annotations, 9.7.1
- reference conditional expressions, 15.25.3
- return statement, 14.17
- run-time evaluation of method references, 15.13.3
- simple assignment operator =, 15.26.1,
15.26.1
- switch statement, 14.11
- throw statement, 14.18, 14.18
- type of an expression, 15.3
- variables, 4.12
-
assignment expressions, 16.1.8
-
assignment operators, 15.26
-
- assignment contexts, 5.2
- assignment expressions, 16.1.8
- evaluation order for other expressions, 15.7.5
- field initialization, 8.3.2
- final variables, 4.12.4
- forms of expressions, 15.2
- initial values of variables, 4.12.5
- syntactic classification of a name according to context, 6.5.1
- variables, 4.12
-
asynchronous Exceptions, 11.1.3
-
- causes of Exceptions, 11.1.2
B
- basic
for statement, 14.14.1
-
- @Target, <IP_ADDRESS>
- for statements, 16.2.12
- scope of a declaration, 6.3
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11
- basic
try-with-resources, <IP_ADDRESS>
- binary
compatibility, 13
- binary
numeric promotion, 5.6.2
-
- additive operators (+ and -) for numeric types, 15.18.2
- division operator /, 15.17.2
- integer bitwise operators &, ^, and |, 15.22.1
- multiplicative operators, 15.17
- numeric conditional expressions, 15.25.2
- numeric contexts, 5.6
- numerical comparison operators <,
<=, >, and >=, 15.20.1
- numerical equality operators == and !=, 15.21.1
- postfix decrement operator --, 15.14.3
- postfix increment operator ++, 15.14.2
- prefix decrement operator --, 15.15.2
- prefix increment operator ++, 15.15.1
- remainder operator %, 15.17.3
- shift operators, 15.19
-
bitwise and logical operators, 15.22
-
- constant expressions, 15.28
-
bitwise complement operator ~, 15.15.5
-
- constant expressions, 15.28
- integer operations, 4.2.2
- unary numeric promotion, 5.6.1
-
blocks, 14.2, 16.2.2
-
- blocks, 16.2.2
- kinds of variables, 4.12.3
- lambda body, 15.27.2
- local class declarations, 14.3
- scope of a declaration, 6.3
- blocks
and statements, 14
-
boolean conditional expressions, 15.25.1
-
boolean constant expressions, 16.1.1
-
boolean equality operators == and !=, 15.21.2
-
- boolean type and boolean values, 4.2.5
-
boolean literals, 3.10.3
-
- boolean type and boolean values, 4.2.5
- boxing conversion, 5.1.7
- constant expressions, 15.28
- identifiers, 3.8
- lexical literals, 15.8.1
-
boolean logical operators &, ^, and |, 15.22.2
-
- boolean type and boolean values, 4.2.5
- conditional-and operator &&, 15.23
- conditional-or operator ||, 15.24
-
boolean type and boolean values, 4.2.5
-
- boolean literals, 3.10.3
- lexical literals, 15.8.1
-
bounds, 18.1.3
-
- bounds involving capture conversion, 18.3.2
- functional interface parameterization inference, 18.5.3
- invocation applicability inference, 18.5.1
- more specific method inference, 18.5.4
- reduction, 18.2
- bounds
involving capture conversion, 18.3.2
-
- incorporation, 18.3
- boxing
conversion, 5.1.7
-
- assignment contexts, 5.2
- casting contexts, 5.5
- class literals, 15.8.2
- conditional operator ? :, 15.25
- creation of new class instances, 12.5
- floating-point operations, 4.2.4
- integer operations, 4.2.2
- invocation contexts, 5.3
- invocation type inference, 18.5.2
- normal and abrupt completion of evaluation, 15.6
- numeric conditional expressions, 15.25.2
- objects, 4.3.1
- postfix decrement operator --, 15.14.3
- postfix increment operator ++, 15.14.2
- prefix decrement operator --, 15.15.2
- prefix increment operator ++, 15.15.1
- type compatibility constraints, 18.2.2,
18.2.2
- break
statement, 14.15
-
- break, continue, return, and throw statements, 16.2.13
- labeled statements, 14.7
- names and identifiers, 6.2
- normal and abrupt completion of statements, 14.1
- break,
continue, return, and throw statements, 16.2.13
C
-
capture conversion, 5.1.10
-
- array access expressions, 15.10.3
- assignment operators, 15.26
- bounds, 18.1.3
- cast expressions, 15.16
- compile-time declaration of a method reference, 15.13.1,
15.13.1
- compile-time step 3: is the chosen method appropriate?, 15.12.3
- enhanced for statement, 14.14.2
- expression compatibility constraints, 18.2.1,
18.2.1
- field access using a primary, 15.11.1
- function types, 9.9
- intersection types, 4.9
- least upper bound, 4.10.4
- members and constructors of parameterized types, 4.5.2
- parameterized types, 4.5
- qualified expression names, <IP_ADDRESS>,
<IP_ADDRESS>, <IP_ADDRESS>,
<IP_ADDRESS>, <IP_ADDRESS>
- reference conditional expressions, 15.25.3
- resolution, 18.4
- simple expression names, <IP_ADDRESS>
- subtyping among class and interface types, 4.10.2
- type arguments of parameterized types, 4.5.1
- type of a method reference, 15.13.2
- cast
expressions, 15.16
-
- array types, 10.1
- casting contexts, 5.5
- compile-time step 3: is the chosen method appropriate?, 15.12.3
- constant expressions, 15.28
- expressions and run-time checks, 15.5, 15.5
- floating-point operations, 4.2.4
- forms of expressions, 15.2
- happens-before order, 17.4.5
- integer operations, 4.2.2
- intersection types, 4.9
- normal and abrupt completion of evaluation, 15.6
- objects, 4.3.1
- syntactic classification of a name according to context, 6.5.1
- type comparison operator instanceof, 15.20.2
- unary operators, 15.15
- where types are used, 4.11
-
casting contexts, 5.5
-
- boolean type and boolean values, 4.2.5
- cast expressions, 15.16, 15.16
- expressions and run-time checks, 15.5, 15.5
- happens-before order, 17.4.5
- kinds of types and values, 4.1
- lambda expressions, 15.27
- method reference expressions, 15.13
- objects, 4.3.1
- reference equality operators == and !=, 15.21.3
-
casting conversions to primitive types, 5.5
-
casting conversions to reference types, 5.5
- causes
of Exceptions, 11.1.2
-
character literals, 3.10.4
-
- boxing conversion, 5.1.7
- comments, 3.7
- constant expressions, 15.28
- escape sequences for character and String literals, 3.10.6
- lexical literals, 15.8.1
- unicode, 3.1
- check
accessibility of type and method, <IP_ADDRESS>
-
- run-time evaluation of method references, 15.13.3,
15.13.3, 15.13.3
-
checked casts and unchecked casts, 5.5.2
-
- variables of reference type, 4.12.2
-
checked casts at run time, 5.5.3
-
- checked casts and unchecked casts, 5.5.2
-
checked exception constraints, 18.2.5
-
choosing the constructor and its arguments, 15.9.3
-
- anonymous constructors, <IP_ADDRESS>
- class instance creation
expressions, 15.9
- compile-time declaration of a method reference, 15.13.1
- default constructor, 8.8.9
- expression compatibility constraints, 18.2.1
- formal parameters, 8.8.1
-
choosing the most specific method, <IP_ADDRESS>
-
- compile-time declaration of a method reference, 15.13.1,
15.13.1, 15.13.1
- compile-time step 2: determine
method Signature, 15.12.2
- conditional operator ? :, 15.25, 15.25
- method and constructor overloading, 13.4.23
- more specific method inference, 18.5.4,
18.5.4
- phase 1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>
- phase 2: identify matching arity
methods applicable by loose invocation, <IP_ADDRESS>
- phase 3: identify methods
applicable by variable arity invocation, <IP_ADDRESS>
- class
body and member declarations, 8.1.6, 13.4.6
-
- class members, 8.2
- member type declarations, 8.5, 8.5
- scope of a declaration, 6.3
- what binary compatibility is and is not, 13.2
- class
declarations, 8.1
-
- declarations, 6.1
- reference types and values, 4.3
- types, classes, and interfaces, 4.12.6
- class
instance creation
expressions, 15.9
-
- conditional operator ? :, 15.25, 15.25
- constructor declarations, 8.8, 8.8
- constructor overloading, 8.8.8
- creation of new class instances, 12.5
- exception analysis of expressions, 11.2.1
- form of a binary, 13.1
- forms of expressions, 15.2
- functional interfaces, 9.8
- initial values of variables, 4.12.5, 4.12.5
- instance initializers, 8.6
- invocation contexts, 5.3
- invocation type inference, 18.5.2, 18.5.2
- kinds of variables, 4.12.3
- method reference expressions, 15.13
- names and identifiers, 6.2
- objects, 4.3.1, 4.3.1
- return statement, 14.17
- run-time handling of an exception, 11.3
- String conversion, 5.1.11
- syntactic classification of a name according to context, 6.5.1,
6.5.1, 6.5.1
- types, classes, and interfaces, 4.12.6
- where types are used, 4.11, 4.11, 4.11,
4.11
- class
literals, 15.8.2
-
- declarations, 6.1
- normal annotations, 9.7.1
- syntactic classification of a name according to context, 6.5.1
- class
loading, 12.2
-
- causes of Exceptions, 11.1.2
- class literals, 15.8.2
- load the class test, 12.1.1
- class
members, 8.2
-
- abstract classes, <IP_ADDRESS>
- declarations, 6.1
- function types, 9.9
- members and constructors of parameterized types, 4.5.2
- method invocation type, <IP_ADDRESS>
- class
modifiers, 8.1.1
-
- @Target, <IP_ADDRESS>
- anonymous class declarations, 15.9.5
- local class declarations, 14.3
- reference type casting, 5.5.1,
5.5.1, 5.5.1
- class
Object, 4.3.2
-
- checked casts at run time, 5.5.3,
5.5.3
- method invocation type, <IP_ADDRESS>
- class
objects for arrays, 10.8
-
- types, classes, and interfaces, 4.12.6
- class
String, 4.3.3
-
- lexical literals, 15.8.1
- literals, 3.10
- objects, 4.3.1
- String literals, 3.10.5, 3.10.5
- class
type parameters, 13.4.5
-
classes, 8
-
- local class declarations, 14.3
- package members, 7.1
- qualified expression names, <IP_ADDRESS>
- reclassification of contextually ambiguous names, 6.5.2
- top level type declarations, 7.6
-
comments, 3.7
-
- input elements and tokens, 3.5
- lexical grammar, 2.2
- lexical translations, 3.2
- line terminators, 3.4
- unicode, 3.1
-
compilation units, 7.3
-
- determining accessibility, 6.6.1
- host support for packages, 7.2
- observability of a package, 7.4.3
- package members, 7.1
- reclassification of contextually ambiguous names, 6.5.2,
6.5.2
- scope of a declaration, 6.3
- shadowing, 6.4.1
- syntactic grammar, 2.3
-
compile-time checking of Exceptions, 11.2
-
- checked exception constraints, 18.2.5
-
compile-time declaration of a method reference, 15.13.1
-
- checked exception constraints, 18.2.5
- choosing the most specific method, <IP_ADDRESS>
- compile-time step 2: determine
method Signature, 15.12.2
- expression compatibility constraints, 18.2.1, 18.2.1
- identify potentially applicable methods, <IP_ADDRESS>
- invocation type inference, 18.5.2, 18.5.2
- method reference expressions, 15.13
- phase 1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>
- run-time evaluation of method references, 15.13.3
-
compile-time step 1: determine class or interface to search, 15.12.1
-
- class Object, 4.3.2
- compile-time declaration of a method reference, 15.13.1
- identify potentially applicable methods, <IP_ADDRESS>
- method invocation type, <IP_ADDRESS>
- raw types, 4.8
-
compile-time step 2: determine
method Signature, 15.12.2
-
- choosing the constructor and its arguments, 15.9.3,
15.9.3
- compile-time declaration of a method reference, 15.13.1
- enum constants, 8.9.1
- overloading, 8.4.9
- what binary compatibility is and is not, 13.2
-
compile-time step 3: is the chosen method appropriate?, 15.12.3
-
- check accessibility of type and method, <IP_ADDRESS>
- choosing the most specific method, <IP_ADDRESS>
- create frame, synchronize, transfer control, <IP_ADDRESS>
- form of a binary, 13.1
- locate method to invoke, <IP_ADDRESS>, <IP_ADDRESS>
- method invocation expressions, 15.12
- run-time evaluation of method references, 15.13.3,
15.13.3, 15.13.3
-
complementary pairs of bounds, 18.3.1
-
- incorporation, 18.3
-
compound assignment operators, 15.26.2
-
- evaluate left-hand operand first, 15.7.1
-
compute target reference (if necessary), <IP_ADDRESS>
-
- method reference expressions, 15.13
-
concepts and notation, 18.1
-
conditional expression type (primitive 3rd operand, part i), 15.25
-
conditional expression type (primitive 3rd operand, part ii), 15.25
-
conditional expression type (reference 3rd operand, part i), 15.25
-
conditional expression type (reference 3rd operand, part ii), 15.25
-
conditional expression type (reference 3rd operand, part iii), 15.25
-
conditional operator ? :, 15.25, 16.1.5, 16.1.6
-
- binary numeric promotion, 5.6.2
- boolean type and boolean values, 4.2.5,
4.2.5
- conditional operator ? :, 16.1.5, 16.1.6
- constant expressions, 15.28
- floating-point operations, 4.2.4
- forms of expressions, 15.2, 15.2
- identify potentially applicable methods, <IP_ADDRESS>
- integer operations, 4.2.2
- objects, 4.3.1
- phase 1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>
-
conditional-and operator &&, 15.23, 16.1.2
-
- boolean type and boolean values, 4.2.5
- conditional-and operator &&, 16.1.2
- constant expressions, 15.28
-
conditional-or operator ||, 15.24, 16.1.3
-
- boolean type and boolean values, 4.2.5
- conditional-or operator ||, 16.1.3
- constant expressions, 15.28
- forms of expressions, 15.2
-
constant expressions, 15.28
-
- assignment contexts, 5.2
- boolean constant expressions, 16.1.1
- class String, 4.3.3
- creation of new class instances, 12.5
- final fields and static constant variables, 13.4.9
- final variables, 4.12.4
- forms of expressions, 15.2
- fp-strict expressions, 15.4
- initialization of fields in interfaces, 9.3.1
- normal annotations, 9.7.1
- numeric conditional expressions, 15.25.2
- objects, 4.3.1
- String concatenation operator +, 15.18.1
- String literals, 3.10.5
- subsequent modification of final fields, 17.5.3
- unreachable statements, 14.21,
14.21, 14.21
-
constraint formulas, 18.1.2
-
- reduction, 18.2
-
constructor body, 8.8.7
-
- constructor declarations, 8.8
- definite assignment, constructors, and instance initializers, 16.9
- initial values of variables, 4.12.5
- kinds of variables, 4.12.3
- return statement, 14.17
- this, 15.8.3
-
constructor declarations, 8.8
-
- class body and member declarations, 8.1.6
- creation of new class instances, 12.5
- declarations, 6.1, 6.1
- final fields, <IP_ADDRESS>
- raw types, 4.8
- return statement, 14.17
- run-time evaluation of class instance creation expressions, 15.9.4
- simple expression names, <IP_ADDRESS>
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11
-
constructor modifiers, 8.8.3
-
- @Target, <IP_ADDRESS>
-
constructor overloading, 8.8.8
-
constructor Signature, 8.8.2
-
- form of a binary, 13.1
-
constructor throws, 8.8.5
-
- compile-time checking of Exceptions, 11.2
- declarations, 6.1
- syntactic classification of a name according to context, 6.5.1
- throw statement, 14.18
- where types are used, 4.11, 4.11
-
context-free grammars, 2.1
-
- compilation units, 7.3
-
continue statement, 14.16
-
- break, continue, return, and throw statements, 16.2.13
- labeled statements, 14.7
- names and identifiers, 6.2
- normal and abrupt completion of statements, 14.1
-
conversions and contexts, 5
-
- parenthesized expressions, 15.8.5
- type of an expression, 15.3
- create
frame, synchronize, transfer control, <IP_ADDRESS>
-
- run-time evaluation of method references, 15.13.3,
15.13.3, 15.13.3
-
creation of new class instances, 12.5
-
- constructor declarations, 8.8
- field initialization, 8.3.2
- form of a binary, 13.1
- instance initializers, 8.6
- run-time evaluation of class instance creation expressions, 15.9.4
- static fields, <IP_ADDRESS>
- String concatenation operator +, 15.18.1
- when initialization occurs, 12.4.1
D
-
declarations, 6.1
-
- functional interfaces, 9.8
- members and constructors of parameterized types, 4.5.2
- names and identifiers, 6.2
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11, 4.11
-
default constructor, 8.8.9
-
- form of a binary, 13.1
- method and constructor declarations, 13.4.12
-
defaults for annotation type elements, 9.6.2
-
- marker annotations, 9.7.2
- single-element annotations, 9.7.3
- syntactic classification of a name according to context, 6.5.1
-
definite assignment, 16
-
- assignment operators, 15.26
- final variables, 4.12.4, 4.12.4, 4.12.4
- initial values of variables, 4.12.5
- inner classes and enclosing instances, 8.1.3
- kinds of variables, 4.12.3
- lambda body, 15.27.2
- parenthesized expressions, 15.8.5
-
definite assignment and anonymous classes, 16.6
-
definite assignment and array initializers, 16.4
-
definite assignment and enum constants, 16.5
-
definite assignment and expressions, 16.1
-
definite assignment and member types, 16.7
-
definite assignment and parameters, 16.3
-
definite assignment and statements, 16.2
-
definite assignment and static initializers, 16.8
-
- definite assignment and enum constants, 16.5
- final fields, <IP_ADDRESS>
-
definite assignment, constructors, and instance initializers, 16.9
-
- final fields, <IP_ADDRESS>
-
detailed initialization procedure, 12.4.2
-
- field initialization, 8.3.2, 8.3.2
- final fields and static constant variables, 13.4.9
- form of a binary, 13.1
- initialization of fields in interfaces, 9.3.1
- simple expression names, <IP_ADDRESS>
- static initializers, 8.7
- throw statement, 14.18
- when initialization occurs, 12.4.1
-
details on protected access, 6.6.2
-
- determining accessibility, 6.6.1
-
determining accessibility, 6.6.1
-
- top level type declarations, 7.6
-
determining enclosing instances, 15.9.2
-
- anonymous constructors, <IP_ADDRESS>
- choosing the constructor and its arguments, 15.9.3,
15.9.3
- class instance creation
expressions, 15.9
- compile-time declaration of a method reference, 15.13.1
- default constructor, 8.8.9
- formal parameters, 8.8.1
- inner classes and enclosing instances, 8.1.3
- method reference expressions, 15.13
- run-time evaluation of method references, 15.13.3
-
determining the class being instantiated, 15.9.1
-
- abstract classes, <IP_ADDRESS>
- class instance creation
expressions, 15.9
- enum types, 8.9
-
determining the meaning of a name, 6.5
-
- class members, 8.2
- declarations, 6.1
- interface members, 9.2
- names and identifiers, 6.2
- obscuring, 6.4.2
- where types are used, 4.11
-
division operator /, 15.17.2
-
- compound assignment operators, 15.26.2
- evaluate operands before operation, 15.7.2
- integer operations, 4.2.2
- normal and abrupt completion of evaluation, 15.6
- do
statement, 14.13
-
- boolean type and boolean values, 4.2.5
- do statements, 16.2.11
- do
statements, 16.2.11
E
- empty
statement, 14.6
-
- empty statements, 16.2.1
- empty
statements, 16.2.1
-
enhanced for statement, 14.14.2
-
- @Target, <IP_ADDRESS>
- array variables, 10.2
- for statements, 16.2.12
- scope of a declaration, 6.3
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11
- enum
body declarations, 8.9.2
-
- constructor declarations, 8.8
- declarations, 6.1, 6.1, 6.1
- enum
constants, 8.9.1
-
- @Target, <IP_ADDRESS>
- definite assignment and enum constants, 16.5
- definite assignment and static initializers, 16.8
- enum types, 8.9
- normal annotations, 9.7.1
- where types are used, 4.11
- enum
members, 8.9.3
-
- declarations, 6.1
- form of a binary, 13.1
- enum
types, 8.9
-
- @Target, <IP_ADDRESS>
- abstract methods, <IP_ADDRESS>
- class declarations, 8.1
- declarations, 6.1
- normal annotations, 9.7.1
- superclasses and subclasses, 8.1.4
- switch statement, 14.11
-
equality operators, 15.21
-
- constant expressions, 15.28
-
erasure, 4.6
-
- assignment contexts, 5.2
- cast expressions, 15.16
- checked casts and unchecked casts, 5.5.2
- checked casts at run time, 5.5.3
- choosing the most specific method, <IP_ADDRESS>
- class Object, 4.3.2
- class type parameters, 13.4.5
- compile-time step 3: is the chosen method appropriate?, 15.12.3
- constructor Signature, 8.8.2
- create frame, synchronize, transfer control, <IP_ADDRESS>
- declarations, 6.1
- evaluate arguments, <IP_ADDRESS>
- field declarations, 13.4.8
- form of a binary, 13.1, 13.1, 13.1
- invocation contexts, 5.3
- method and constructor formal parameters, 13.4.14
- method and constructor type parameters, 13.4.13
- method invocation type, <IP_ADDRESS>
- method result type, 13.4.15
- method Signature, 8.4.2
- raw types, 4.8
- requirements in overriding and hiding, <IP_ADDRESS>
- type variables, 4.4
- escape
sequences for character and String literals, 3.10.6
-
- character literals, 3.10.4
- String literals, 3.10.5
-
evaluate arguments, <IP_ADDRESS>
-
- formal parameters, 8.4.1
- variables of reference type, 4.12.2
-
evaluate left-hand operand first, 15.7.1
-
evaluate operands before operation, 15.7.2
-
evaluation order, 15.7
-
evaluation order for other expressions, 15.7.5
-
evaluation respects parentheses and precedence, 15.7.3
-
evaluation, denotation, and result, 15.1
-
- assert statement, 14.10
-
evolution of annotation types, 13.5.7
-
evolution of classes, 13.4
-
evolution of enums, 13.4.26
-
evolution of interfaces, 13.5
-
evolution of packages, 13.3
-
example programs, 1.2
-
exception analysis of expressions, 11.2.1
-
- class instance creation
expressions, 15.9
- compile-time checking of Exceptions, 11.2
- method invocation expressions, 15.12
-
exception analysis of statements, 11.2.2
-
- compile-time checking of Exceptions, 11.2
- explicit constructor invocations, <IP_ADDRESS>
- method throws, 8.4.6
- throw statement, 14.18
- try statement, 14.20
-
exception checking, 11.2.3
-
- compile-time checking of Exceptions, 11.2
- field initialization, 8.3.2
- instance initializers, 8.6
- method throws, 8.4.6
- static initializers, 8.7
- throw statement, 14.18, 14.18
- try statement, 14.20
- type of a lambda expression, 15.27.3
-
Exceptions, 11
-
- floating-point operations, 4.2.4
- integer operations, 4.2.2
- normal and abrupt completion of statements, 14.1
- throw statement, 14.18
-
execution, 12
-
execution of local variable declarations, 14.4.2
-
- final variables, 4.12.4
-
execution of try-catch, 14.20.1
-
- try statement, 14.20
-
execution of try-finally and try-catch-finally, 14.20.2
-
- try statement, 14.20
-
executions, 17.4.6
-
- well-formed executions, 17.4.7
-
executions and causality requirements, 17.4.8
-
explicit constructor invocations, <IP_ADDRESS>
-
- anonymous constructors, <IP_ADDRESS>,
<IP_ADDRESS>
- constructor body, 8.8.7
- creation of new class instances, 12.5
- definite assignment, constructors, and instance initializers, 16.9,
16.9
- enum body declarations, 8.9.2
- exception analysis of statements, 11.2.2
- form of a binary, 13.1
- inner classes and enclosing instances, 8.1.3,
8.1.3
- instance initializers, 8.6
- invocation contexts, 5.3
- syntactic classification of a name according to context, 6.5.1,
6.5.1
- where types are used, 4.11, 4.11
-
expression compatibility constraints, 18.2.1
-
expression names, 15.14.1
-
- declarations, 6.1
-
expression statements, 14.8, 16.2.6
-
- evaluation, denotation, and result, 15.1
- expression statements, 16.2.6
- identify potentially applicable methods, <IP_ADDRESS>
- initialization of for statement, <IP_ADDRESS>
- type of a lambda expression, 15.27.3
-
expressions, 15
-
expressions and run-time checks, 15.5
-
extended try-with-resources, <IP_ADDRESS>
F
-
feedback, 1.5
- field
(constant) declarations, 9.3
-
- @Target, <IP_ADDRESS>
- array initializers, 10.6
- array variables, 10.2, 10.2
- declarations, 6.1
- final variables, 4.12.4
- interface body and member declarations, 9.1.4
- kinds of variables, 4.12.3
- obscuring, 6.4.2
- shadowing, 6.4.1
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11
- field
access expressions, 15.11
-
- assignment operators, 15.26
- names and identifiers, 6.2
- normal and abrupt completion of evaluation, 15.6
- objects, 4.3.1
- raw types, 4.8
- simple assignment operator =, 15.26.1
- static initializers, 8.7
- field
access using a primary, 15.11.1
- field
declarations, 8.3, 13.4.8,
13.5.5
-
- array initializers, 10.6
- array variables, 10.2, 10.2
- class body and member declarations, 8.1.6
- creation of new class instances, 12.5
- declarations, 6.1
- field declarations, 13.5.5
- obscuring, 6.4.2
- raw types, 4.8
- reclassification of contextually ambiguous names, 6.5.2
- shadowing, 6.4.1
- simple expression names, <IP_ADDRESS>
- syntactic classification of a name according to context, 6.5.1
- where annotations may appear, 9.7.4
- where types are used, 4.11
- field
initialization, 8.3.2
-
- definite assignment and static initializers, 16.8
- definite assignment, constructors, and instance initializers, 16.9
- detailed initialization procedure, 12.4.2
- exception checking, 11.2.3, 11.2.3
- final fields and static constant variables, 13.4.9
- initialization of fields in interfaces, 9.3.1
- simple expression names, <IP_ADDRESS>
- static initializers, 8.7
- this, 15.8.3
- field
modifiers, 8.3.1
-
- @Target, <IP_ADDRESS>
- field declarations, 8.3
- final
classes, <IP_ADDRESS>, 13.4.2
-
- anonymous class declarations, 15.9.5
- final methods, <IP_ADDRESS>
- superclasses and subclasses, 8.1.4
- verification of the binary representation, 12.3.1
- final
field semantics, 17.5
-
- memory model, 17.4
- final
fields, <IP_ADDRESS>
- final
fields and static constant variables, 13.4.9
-
- field declarations, 13.5.5
- final variables, 4.12.4
- verification of the binary representation, 12.3.1
- final
methods, <IP_ADDRESS>, 13.4.17
-
- verification of the binary representation, 12.3.1
- final
variables, 4.12.4
-
- constant expressions, 15.28, 15.28
- detailed initialization procedure, 12.4.2
- enum body declarations, 8.9.2
- field initialization, 8.3.2
- final fields, <IP_ADDRESS>
- final fields and static constant variables, 13.4.9
- form of a binary, 13.1
- initialization of fields in interfaces, 9.3.1
- inner classes and enclosing instances, 8.1.3,
8.1.3, 8.1.3
- lambda body, 15.27.2
- local variable declarators and types, 14.4.1
- narrowing reference conversion, 5.1.6
- try statement, 14.20
- try-with-resources, 14.20.3
- when initialization occurs, 12.4.1
-
finalization of class instances, 12.6
-
- class Object, 4.3.2
- enum body declarations, 8.9.2
- happens-before order, 17.4.5
- kinds of variables, 4.12.3
- unloading of classes and interfaces, 12.7
-
floating-point literals, 3.10.2
-
- constant expressions, 15.28
- lexical literals, 15.8.1
-
floating-point operations, 4.2.4
-
- additive operators (+ and -) for numeric types, 15.18.2
- division operator /, 15.17.2
- multiplication operator *, 15.17.1
- narrowing primitive conversion, 5.1.3
- widening primitive conversion, 5.1.2
-
floating-point types, formats, and values, 4.2.3
-
- cast expressions, 15.16
- field declarations, 8.3
- floating-point literals, 3.10.2
- formal parameters, 8.4.1
- fp-strict expressions, 15.4
- lambda parameters, 15.27.1
- lexical literals, 15.8.1, 15.8.1
- local variable declarators and types, 14.4.1
- narrowing primitive conversion, 5.1.3,
5.1.3
- parenthesized expressions, 15.8.5
- return statement, 14.17
- unary minus operator -, 15.15.4
-
floating-point value set parameters, 4.2.3
-
- floating-point types, formats, and values, 4.2.3, 4.2.3, 4.2.3
- for
statement, 14.14
-
- boolean type and boolean values, 4.2.5
- declarations, 6.1
- initial values of variables, 4.12.5
- kinds of variables, 4.12.3
- local variable declaration statements, 14.4
- for
statements, 16.2.12
-
forbidden conversions, 5.1.12
- form
of a binary, 13.1
-
- check accessibility of type and method, <IP_ADDRESS>
- compile-time step 3: is the chosen method appropriate?, 15.12.3
- final variables, 4.12.4
- loading of classes and interfaces, 12.2
- locate method to invoke, <IP_ADDRESS>
- resolution of symbolic references, 12.3.3
- top level type declarations, 7.6
- when reference types are the same, 4.3.4,
4.3.4
- formal
parameters, 8.4.1, 8.8.1
-
- @Target, <IP_ADDRESS>
- array variables, 10.2
- choosing the constructor and its arguments, 15.9.3
- compile-time declaration of a method reference, 15.13.1
- compile-time step 3: is the chosen method appropriate?, 15.12.3
- declarations, 6.1, 6.1
- default constructor, 8.8.9
- definite assignment and parameters, 16.3,
16.3
- evaluate arguments, <IP_ADDRESS>
- final variables, 4.12.4, 4.12.4
- form of a binary, 13.1
- formal parameters, 8.8.1
- initial values of variables, 4.12.5, 4.12.5
- invoke test.main, 12.1.4
- kinds of variables, 4.12.3, 4.12.3
- lambda parameters, 15.27.1, 15.27.1
- method and constructor formal parameters, 13.4.14
- method declarations, 8.4
- reclassification of contextually ambiguous names, 6.5.2,
6.5.2
- scope of a declaration, 6.3, 6.3
- shadowing and obscuring, 6.4
- shared variables, 17.4.1
- syntactic classification of a name according to context, 6.5.1,
6.5.1, 6.5.1
- this, 15.8.3
- variables of reference type, 4.12.2
- where types are used, 4.11, 4.11, 4.11,
4.11
- forms
of expressions, 15.2
-
- boolean conditional expressions, 15.25.1
- choosing the most specific method, <IP_ADDRESS>
- class instance creation
expressions, 15.9
- conditional operator ? :, 15.25, 15.25
- expression compatibility constraints, 18.2.1, 18.2.1
- identify potentially applicable methods, <IP_ADDRESS>
- lambda expressions, 15.27
- method reference expressions, 15.13
- more specific method inference, 18.5.4
- numeric conditional expressions, 15.25.2
- parenthesized expressions, 15.8.5
-
forward references during field initialization, 8.3.3
-
- when initialization occurs, 12.4.1
-
fp-strict expressions, 15.4
-
- additive operators (+ and -) for numeric types, 15.18.2
- cast expressions, 15.16
- constant expressions, 15.28
- division operator /, 15.17.2
- floating-point types, formats, and values, 4.2.3
- formal parameters, 8.4.1
- method declarations, 9.4
- multiplication operator *, 15.17.1
- return statement, 14.17
- strictfp classes, <IP_ADDRESS>
- strictfp interfaces, <IP_ADDRESS>
- strictfp methods, <IP_ADDRESS>
- value set conversion, 5.1.13, 5.1.13
- widening primitive conversion, 5.1.2
- fully
qualified names and canonical names, 6.7
-
- compilation units, 7.3
- form of a binary, 13.1, 13.1
- import declarations, 7.5, 7.5
- local class declarations, 14.3
- named packages, 7.4.1
- notation, 1.3
- package members, 7.1
- single-static-import declarations, 7.5.3
- single-type-import declarations, 7.5.1
- static-import-on-demand declarations, 7.5.4
- top level type declarations, 7.6
- type-import-on-demand declarations, 7.5.2
-
function types, 9.9
-
- checked exception constraints, 18.2.5
- expression compatibility constraints, 18.2.1
- functional interface parameterization inference, 18.5.3
- type of a lambda expression, 15.27.3
- type of a method reference, 15.13.2
-
functional interface parameterization inference, 18.5.3
-
- expression compatibility constraints, 18.2.1
- type of a lambda expression, 15.27.3
-
functional interfaces, 9.8
-
- @FunctionalInterface, <IP_ADDRESS>
- checked exception constraints, 18.2.5
- expression compatibility constraints, 18.2.1
- identify potentially applicable methods, <IP_ADDRESS>
- lambda expressions, 15.27
- method reference expressions, 15.13
- type of a lambda expression, 15.27.3
- type of a method reference, 15.13.2
G
-
generic classes and type parameters, 8.1.2
-
- @Target, <IP_ADDRESS>
- capture conversion, 5.1.10
- class instance creation
expressions, 15.9
- declarations, 6.1
- form of a binary, 13.1
- generic constructors, 8.8.4
- generic methods, 8.4.4
- parameterized types, 4.5
- scope of a declaration, 6.3
- syntactic classification of a name according to context, 6.5.1
- type variables, 4.4
- types, classes, and interfaces, 4.12.6
- where types are used, 4.11
-
generic constructors, 8.8.4
-
- @Target, <IP_ADDRESS>
- class instance creation
expressions, 15.9
- declarations, 6.1
- form of a binary, 13.1
- scope of a declaration, 6.3
- syntactic classification of a name according to context, 6.5.1
- type erasure, 4.6
- type variables, 4.4
- where types are used, 4.11
-
generic interfaces and type parameters, 9.1.2
-
- @Target, <IP_ADDRESS>
- capture conversion, 5.1.10
- declarations, 6.1
- form of a binary, 13.1
- parameterized types, 4.5
- scope of a declaration, 6.3
- subtyping among class and interface types, 4.10.2
- superinterfaces, 8.1.5
- syntactic classification of a name according to context, 6.5.1
- type variables, 4.4
- types, classes, and interfaces, 4.12.6
- where types are used, 4.11
-
generic methods, 8.4.4
-
- @Target, <IP_ADDRESS>
- compile-time declaration of a method reference, 15.13.1
- compile-time step 2: determine
method Signature, 15.12.2
- declarations, 6.1
- form of a binary, 13.1
- function types, 9.9, 9.9
- method declarations, 8.4, 9.4
- method invocation expressions, 15.12
- method result, 8.4.5
- method Signature, 8.4.2
- scope of a declaration, 6.3
- syntactic classification of a name according to context, 6.5.1
- type erasure, 4.6
- type variables, 4.4
- where types are used, 4.11
-
grammar notation, 2.4
-
grammars, 2
H
-
happens-before order, 17.4.5
-
- executions, 17.4.6
- executions and causality requirements, 17.4.8
- finalization of class instances, 12.6
- hiding
(by class methods), <IP_ADDRESS>
-
- obscuring, 6.4.2
- shadowing, 6.4.1
- host
support for packages, 7.2
-
- top level type declarations, 7.6
I
-
identifiers, 3.8
-
- declarations, 6.1
- keywords, 3.9
- lexical grammar, 2.2
-
identify potentially applicable methods, <IP_ADDRESS>
-
- compile-time declaration of a method reference, 15.13.1,
15.13.1, 15.13.1
- compile-time step 1: determine class or interface to search, 15.12.1
- compile-time step 2: determine
method Signature, 15.12.2
- phase 1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>
- phase 2: identify matching arity
methods applicable by loose invocation, <IP_ADDRESS>
- phase 3: identify methods
applicable by variable arity invocation, <IP_ADDRESS>
-
identity conversion, 5.1.1
-
- assignment contexts, 5.2
- boxing conversion, 5.1.7
- capture conversion, 5.1.10
- casting contexts, 5.5
- invocation contexts, 5.3, 5.3
- numeric contexts, 5.6
- unary numeric promotion, 5.6.1
- if
statement, 14.9
-
- boolean type and boolean values, 4.2.5
- if
statements, 16.2.7
-
if-then statement, 14.9.1
-
- if statements, 16.2.7
-
if-then-else statement, 14.9.2
-
- if statements, 16.2.7
-
implementing finalization, 12.6.1
- import
declarations, 7.5
-
- compilation units, 7.3
-
incorporation, 18.3
-
incrementation part of for statement, <IP_ADDRESS>
-
inference variables, 18.1.1
-
inheritance and overriding, 9.4.1
-
- compile-time checking of Exceptions, 11.2
- compile-time declaration of a method reference, 15.13.1
- compile-time step 3: is the chosen method appropriate?, 15.12.3
- interface members, 9.2
- method declarations, 9.4
-
inheritance, overriding, and hiding, 8.4.8
-
- class Object, 4.3.2
- compile-time declaration of a method reference, 15.13.1
- enum constants, 8.9.1
- function types, 9.9
-
inheriting methods with override-equivalent signatures, <IP_ADDRESS>,
<IP_ADDRESS>
-
- variables of reference type, 4.12.2
-
initial values of variables, 4.12.5
-
- array initializers, 10.6
- creation of new class instances, 12.5
- field initialization, 8.3.2
- final fields and static constant variables, 13.4.9
- initialization of fields in interfaces, 9.3.1
- kinds of variables, 4.12.3, 4.12.3, 4.12.3
- preparation of a class or interface type, 12.3.2
- run-time evaluation of array creation expressions, 15.10.2
- run-time evaluation of class instance creation expressions, 15.9.4
- variables, 4.12
-
initialization of classes and interfaces, 12.4
-
- causes of Exceptions, 11.1.2
- initialize test: execute initializers, 12.1.3
- objects, 4.3.1
- preparation of a class or interface type, 12.3.2
- run-time handling of an exception, 11.3
- static fields, <IP_ADDRESS>
-
initialization of fields in interfaces, 9.3.1
-
- detailed initialization procedure, 12.4.2
- field initialization, 8.3.2
- final fields and static constant variables, 13.4.9
-
initialization of for statement, <IP_ADDRESS>
-
initialization part of for statement, <IP_ADDRESS>
-
initialize test: execute initializers, 12.1.3
- inner
classes and enclosing instances, 8.1.3
-
- anonymous class declarations, 15.9.5
- compile-time step 3: is the chosen method appropriate?, 15.12.3
- determining enclosing instances, 15.9.2
- explicit constructor invocations, <IP_ADDRESS>
- form of a binary, 13.1
- local class declarations, 14.3
- method reference expressions, 15.13
- qualified this, 15.8.4
- when initialization occurs, 12.4.1
- input
elements and tokens, 3.5
-
- invocation type inference, 18.5.2
- lexical grammar, 2.2, 2.2
- lexical translations, 3.2
- unicode, 3.1
-
instance creation, 12.5, 15.9
-
- conditional operator ? :, 15.25, 15.25
- constructor declarations, 8.8, 8.8, 8.8
- constructor overloading, 8.8.8
- creation of new class instances, 12.5
- exception analysis of expressions, 11.2.1
- field initialization, 8.3.2
- form of a binary, 13.1, 13.1
- forms of expressions, 15.2
- functional interfaces, 9.8
- initial values of variables, 4.12.5, 4.12.5
- instance initializers, 8.6, 8.6
- invocation contexts, 5.3
- invocation type inference, 18.5.2, 18.5.2
- kinds of variables, 4.12.3
- method reference expressions, 15.13
- names and identifiers, 6.2
- objects, 4.3.1, 4.3.1
- return statement, 14.17
- run-time evaluation of class instance creation expressions, 15.9.4
- run-time handling of an exception, 11.3
- static fields, <IP_ADDRESS>
- String concatenation operator +, 15.18.1
- String conversion, 5.1.11
- syntactic classification of a name according to context, 6.5.1,
6.5.1, 6.5.1
- types, classes, and interfaces, 4.12.6
- when initialization occurs, 12.4.1
- where types are used, 4.11, 4.11, 4.11,
4.11
-
instance initializers, 8.6
-
- class body and member declarations, 8.1.6
- definite assignment, constructors, and instance initializers, 16.9
- exception checking, 11.2.3
- return statement, 14.17
- simple expression names, <IP_ADDRESS>
- this, 15.8.3
- throw statement, 14.18
-
instanceof operator, 15.20.2
-
- expressions and run-time checks, 15.5
- objects, 4.3.1
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11, 4.11
-
integer bitwise operators &, ^, and |, 15.22.1
-
- binary numeric promotion, 5.6.2
- integer operations, 4.2.2
- shift operators, 15.19, 15.19
-
integer literals, 3.10.1
-
- boxing conversion, 5.1.7
- constant expressions, 15.28
- lexical literals, 15.8.1
-
integer operations, 4.2.2
-
integral types and values, 4.2.1
-
- character literals, 3.10.4
- integer literals, 3.10.1
- lexical literals, 15.8.1, 15.8.1, 15.8.1
-
interaction with the memory model, 12.6.2
-
interactions of waits, notification, and interruption, 17.2.4
-
interface body and member declarations, 9.1.4
-
- interface members, 9.2
- member type declarations, 8.5, 8.5
- scope of a declaration, 6.3
-
interface declarations, 9.1
-
- declarations, 6.1
- reference types and values, 4.3
- types, classes, and interfaces, 4.12.6
-
interface members, 9.2, 13.5.3
-
- check accessibility of type and method, <IP_ADDRESS>
- declarations, 6.1
- form of a binary, 13.1, 13.1
-
interface method body, 9.4.3
-
- superinterfaces, 8.1.5
- this, 15.8.3
- when initialization occurs, 12.4.1
-
interface method declarations, 13.5.6
-
interface methods, 9.4
-
- @Target, <IP_ADDRESS>, <IP_ADDRESS>
- array variables, 10.2
- declarations, 6.1, 6.1, 6.1
- final variables, 4.12.4
- inheritance, overriding, and hiding, 8.4.8
- interface body and member declarations, 9.1.4
- raw types, 4.8
- syntactic classification of a name according to context, 6.5.1,
6.5.1, 6.5.1
- where types are used, 4.11, 4.11, 4.11,
4.11
-
interface modifiers, 9.1.1
-
- @Target, <IP_ADDRESS>
- static member type declarations, 8.5.1
-
interface type parameters, 13.5.4
-
interfaces, 9
-
- package members, 7.1
- qualified expression names, <IP_ADDRESS>
- reclassification of contextually ambiguous names, 6.5.2
- top level type declarations, 7.6
-
interruptions, 17.2.3
-
intersection types, 4.9
-
- form of a binary, 13.1, 13.1
- functional interfaces, 9.8
- type variables, 4.4
- where types are used, 4.11
-
introduction, 1
-
invocation applicability inference, 18.5.1
-
- invocation type inference, 18.5.2, 18.5.2, 18.5.2,
18.5.2
- phase 1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>
- phase 2: identify matching arity
methods applicable by loose invocation, <IP_ADDRESS>
- phase 3: identify methods
applicable by variable arity invocation, <IP_ADDRESS>
-
invocation contexts, 5.3
-
- class instance creation
expressions, 15.9
- constraint formulas, 18.1.2, 18.1.2
- create frame, synchronize, transfer control, <IP_ADDRESS>
- expression compatibility constraints, 18.2.1
- formal parameters, 8.4.1
- kinds of types and values, 4.1
- lambda expressions, 15.27
- method invocation expressions, 15.12
- method reference expressions, 15.13
- reference conditional expressions, 15.25.3
- type compatibility constraints, 18.2.2
-
invocation type inference, 18.5.2
-
- expression compatibility constraints, 18.2.1,
18.2.1
- invocation type inference, 18.5.2, 18.5.2
- method invocation type, <IP_ADDRESS>
- invoke
test.main, 12.1.4
-
iteration of for statement, <IP_ADDRESS>
J
- Java
Virtual Machine startup, 12.1
K
-
keywords, 3.9
-
- identifiers, 3.8
- lexical grammar, 2.2
- primitive types and values, 4.2
- kinds
and causes of Exceptions, 11.1
- kinds
of conversion, 5.1
- kinds
of Exceptions, 11.1.1
-
- compile-time checking of Exceptions, 11.2,
11.2
- generic classes and type parameters, 8.1.2
- method throws, 8.4.6, 8.4.6
- narrowing primitive conversion, 5.1.3
- throw statement, 14.18
- widening primitive conversion, 5.1.2
- kinds
of types and values, 4.1
-
- capture conversion, 5.1.10
- lexical literals, 15.8.1
- literals, 3.10
- null literal, 3.10.7
- throw statement, 14.18
- kinds
of variables, 4.12.3
-
- formal parameters, 8.4.1
L
-
labeled statements, 14.7, 16.2.5
-
- break statement, 14.15
- continue statement, 14.16
- labeled statements, 16.2.5
- names and identifiers, 6.2
- lambda
body, 15.27.2
-
- choosing the most specific method, <IP_ADDRESS>
- evaluation, denotation, and result, 15.1
- identify potentially applicable methods, <IP_ADDRESS>,
<IP_ADDRESS>
- kinds of variables, 4.12.3
- type of a lambda expression, 15.27.3
- lambda
expressions, 15.27
-
- exception analysis of expressions, 11.2.1
- forms of expressions, 15.2, 15.2
- functional interfaces, 9.8
- identify potentially applicable methods, <IP_ADDRESS>
- return statement, 14.17
- scope of a declaration, 6.3
- lambda
parameters, 15.27.1
-
- array variables, 10.2
- choosing the most specific method, <IP_ADDRESS>, <IP_ADDRESS>
- compile-time step 2: determine
method Signature, 15.12.2
- declarations, 6.1
- final variables, 4.12.4
- kinds of variables, 4.12.3
- phase 1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>
- shadowing and obscuring, 6.4
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11
- least
upper bound, 4.10.4
-
- intersection types, 4.9
- resolution, 18.4
-
lexical grammar, 2.2
-
lexical literals, 15.8.1
-
- kinds of types and values, 4.1
-
lexical structure, 3
-
- lexical grammar, 2.2
-
lexical translations, 3.2
- line
terminators, 3.4
-
- character literals, 3.10.4
- input elements and tokens, 3.5
- lexical translations, 3.2
- white space, 3.6
- link
test: verify, prepare, (optionally) resolve, 12.1.2
-
linking of classes and interfaces, 12.3
-
- causes of Exceptions, 11.1.2
- check accessibility of type and method, <IP_ADDRESS>
- link test: verify, prepare, (optionally) resolve, 12.1.2
- resolution of symbolic references, 12.3.3
-
literals, 3.10
-
- lexical grammar, 2.2
- lexical literals, 15.8.1
- load
the class test, 12.1.1
-
loading of classes and interfaces, 12.2
-
- causes of Exceptions, 11.1.2
- class literals, 15.8.2
- load the class test, 12.1.1
-
loading process, 12.2.1
-
- superclasses and subclasses, 8.1.4
- superinterfaces and subinterfaces, 9.1.3
- local
class declaration statements, 16.2.3
- local
class declarations, 14.3
-
- class instance creation
expressions, 15.9
- class modifiers, 8.1.1
- form of a binary, 13.1
- inner classes and enclosing instances, 8.1.3
- local class declaration statements, 16.2.3
- reclassification of contextually ambiguous names, 6.5.2
- shadowing and obscuring, 6.4
- local
variable declaration statements, 14.4, 16.2.4
-
- @Target, <IP_ADDRESS>
- array initializers, 10.6
- declarations, 6.1
- initial values of variables, 4.12.5
- initialization of for statement, <IP_ADDRESS>
- initialization part of for statement, <IP_ADDRESS>
- kinds of variables, 4.12.3
- local variable declaration statements, 16.2.4
- objects, 4.3.1
- reclassification of contextually ambiguous names, 6.5.2
- scope of a declaration, 6.3
- shadowing and obscuring, 6.4
- shared variables, 17.4.1
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11
- local
variable declarators and types, 14.4.1
-
- array variables, 10.2, 10.2
- locate
method to invoke, <IP_ADDRESS>
-
- run-time evaluation of method references, 15.13.3,
15.13.3, 15.13.3
-
logical complement operator !, 15.15.6, 16.1.4
-
- boolean type and boolean values, 4.2.5
- constant expressions, 15.28
- logical complement operator !, 16.1.4
M
- marker
annotations, 9.7.2
-
- annotations, 9.7
-
meaning of expression names, 6.5.6
-
- expression names, 15.14.1
- forms of expressions, 15.2
- names and identifiers, 6.2
-
meaning of method names, 6.5.7
-
- names and identifiers, 6.2
-
meaning of package names, 6.5.3
-
- names and identifiers, 6.2
-
meaning of packageortypenames, 6.5.4
-
- type-import-on-demand declarations, 7.5.2
-
meaning of type names, 6.5.5
-
- names and identifiers, 6.2
- member
type declarations, 8.5, 9.5
-
- @Target, <IP_ADDRESS>, <IP_ADDRESS>
- class body and member declarations, 8.1.6
- class instance creation
expressions, 15.9, 15.9
- class modifiers, 8.1.1, 8.1.1
- declarations, 6.1, 6.1, 6.1,
6.1
- definite assignment and member types, 16.7, 16.7
- form of a binary, 13.1, 13.1, 13.1,
13.1
- inner classes and enclosing instances, 8.1.3,
8.1.3
- interface body and member declarations, 9.1.4
- interface modifiers, 9.1.1
- member type declarations, 9.5
- obscuring, 6.4.2, 6.4.2
- qualified type names, <IP_ADDRESS>, <IP_ADDRESS>
- reclassification of contextually ambiguous names, 6.5.2,
6.5.2, 6.5.2,
6.5.2
- reference types and values, 4.3, 4.3
- shadowing, 6.4.1, 6.4.1
- static-import-on-demand declarations, 7.5.4,
7.5.4
- syntactic classification of a name according to context, 6.5.1,
6.5.1
- type-import-on-demand declarations, 7.5.2,
7.5.2
- where types are used, 4.11, 4.11, 4.11,
4.11
-
members and constructors of parameterized types, 4.5.2
- memory
model, 17.4
-
- interaction with the memory model, 12.6.2
- volatile fields, <IP_ADDRESS>
- method
and constructor body, 13.4.22
- method
and constructor declarations, 13.4.12
-
- method and constructor formal parameters, 13.4.14
- method result type, 13.4.15
- method
and constructor formal parameters, 13.4.14
-
- interface method declarations, 13.5.6
- method
and constructor overloading, 13.4.23
-
- interface method declarations, 13.5.6
- method
and constructor throws, 13.4.21
-
- interface method declarations, 13.5.6
- method
and constructor type parameters, 13.4.13
-
- class type parameters, 13.4.5
- method
body, 8.4.7
-
- abstract methods, <IP_ADDRESS>
- constructor body, 8.8.7
- method declarations, 8.4
- native methods, <IP_ADDRESS>
- this, 15.8.3
- method
declarations, 8.4, 9.4
-
- @Target, <IP_ADDRESS>, <IP_ADDRESS>
- array variables, 10.2
- class body and member declarations, 8.1.6
- declarations, 6.1, 6.1, 6.1,
6.1
- evaluation, denotation, and result, 15.1
- final variables, 4.12.4
- inheritance, overriding, and hiding, 8.4.8
- interface body and member declarations, 9.1.4
- raw types, 4.8, 4.8
- return statement, 14.17
- simple expression names, <IP_ADDRESS>
- syntactic classification of a name according to context, 6.5.1,
6.5.1, 6.5.1,
6.5.1
- where types are used, 4.11, 4.11, 4.11,
4.11
- method
invocation expressions, 15.12
-
- anonymous constructors, <IP_ADDRESS>,
<IP_ADDRESS>
- compile-time declaration of a method reference, 15.13.1
- conditional operator ? :, 15.25, 15.25
- constructor declarations, 8.8
- declarations, 6.1
- evaluation, denotation, and result, 15.1
- exception analysis of expressions, 11.2.1
- expressions and run-time checks, 15.5
- field initialization, 8.3.2, 8.3.2
- formal parameters, 8.4.1
- forms of expressions, 15.2
- happens-before order, 17.4.5
- hiding (by class methods), <IP_ADDRESS>
- initial values of variables, 4.12.5
- initialization of fields in interfaces, 9.3.1
- instance initializers, 8.6
- invocation contexts, 5.3
- invocation type inference, 18.5.2, 18.5.2
- kinds of variables, 4.12.3, 4.12.3
- lambda parameters, 15.27.1
- method declarations, 8.4
- names and identifiers, 6.2
- normal and abrupt completion of evaluation, 15.6,
15.6
- objects, 4.3.1
- overloading, 8.4.9
- overriding (by instance methods), <IP_ADDRESS>
- return statement, 14.17
- run-time handling of an exception, 11.3
- simple method names, <IP_ADDRESS>
- static initializers, 8.7
- syntactic classification of a name according to context, 6.5.1,
6.5.1, 6.5.1
- this, 15.8.3
- where types are used, 4.11, 4.11
- method
invocation type, <IP_ADDRESS>
-
- choosing the constructor and its arguments, 15.9.3,
15.9.3
- compile-time declaration of a method reference, 15.13.1
- compile-time step 3: is the chosen method appropriate?, 15.12.3
- exception analysis of expressions, 11.2.1,
11.2.1
- exception analysis of statements, 11.2.2
- expression compatibility constraints, 18.2.1
- invocation type inference, 18.5.2
- type compatibility constraints, 18.2.2
- type of a method reference, 15.13.2
- method
modifiers, 8.4.3
-
- @Target, <IP_ADDRESS>
- method declarations, 8.4
- objects, 4.3.1
- method
overriding, 13.4.24
- method
reference expressions, 15.13
-
- access to a protected member, <IP_ADDRESS>
- declarations, 6.1
- expressions and run-time checks, 15.5, 15.5
- form of a binary, 13.1
- forms of expressions, 15.2, 15.2
- functional interfaces, 9.8
- identify potentially applicable methods, <IP_ADDRESS>
- names and identifiers, 6.2
- syntactic classification of a name according to context, 6.5.1,
6.5.1, 6.5.1
- where types are used, 4.11, 4.11, 4.11
- method
result, 8.4.5
-
- abstract classes, <IP_ADDRESS>
- abstract methods, <IP_ADDRESS>
- array variables, 10.2
- class literals, 15.8.2
- constructor declarations, 8.8
- function types, 9.9
- functional interfaces, 9.8
- interface method body, 9.4.3
- method body, 8.4.7
- method declarations, 8.4
- requirements in overriding and hiding, <IP_ADDRESS>
- return statement, 14.17
- type erasure, 4.6
- where types are used, 4.11
- method
result type, 13.4.15
-
- interface method declarations, 13.5.6
- method
Signature, 8.4.2
-
- abstract classes, <IP_ADDRESS>
- abstract methods, <IP_ADDRESS>
- choosing the most specific method, <IP_ADDRESS>
- constructor Signature, 8.8.2
- form of a binary, 13.1
- functional interfaces, 9.8
- hiding (by class methods), <IP_ADDRESS>
- inheritance and overriding, 9.4.1
- inheritance, overriding, and hiding, 8.4.8,
8.4.8
- inheriting methods with override-equivalent signatures, <IP_ADDRESS>,
<IP_ADDRESS>
- interface members, 9.2
- method declarations, 8.4, 9.4
- method result, 8.4.5
- overloading, 9.4.2
- overriding (by instance methods), <IP_ADDRESS>,
<IP_ADDRESS>, <IP_ADDRESS>
- requirements in overriding and hiding, <IP_ADDRESS>
- type erasure, 4.6
- method
throws, 8.4.6
-
- abstract methods, <IP_ADDRESS>
- compile-time checking of Exceptions, 11.2
- constructor throws, 8.8.5
- declarations, 6.1
- method declarations, 8.4
- syntactic classification of a name according to context, 6.5.1
- throw statement, 14.18
- where types are used, 4.11, 4.11
- more
specific method inference, 18.5.4
-
- choosing the most specific method, <IP_ADDRESS>
-
multiple annotations of the same type, 9.7.5
-
- annotation types, 9.6
- annotations, 9.7
- class modifiers, 8.1.1
- constructor modifiers, 8.8.3
- enum constants, 8.9.1
- field (constant) declarations, 9.3
- field modifiers, 8.3.1
- formal parameters, 8.4.1
- generic classes and type parameters, 8.1.2
- generic interfaces and type parameters, 9.1.2
- interface modifiers, 9.1.1
- lambda parameters, 15.27.1
- local variable declaration statements, 14.4
- method declarations, 9.4
- method modifiers, 8.4.3
- named packages, 7.4.1
-
multiplication operator *, 15.17.1
-
multiplicative operators, 15.17
-
- binary numeric promotion, 5.6.2
- constant expressions, 15.28
- floating-point operations, 4.2.4
- forms of expressions, 15.2
- integer operations, 4.2.2
N
- name
classification, 6.5.1
-
- access control, 6.6
- declarations, 6.1
- reference types and values, 4.3
- name
reclassification, 6.5.2
-
- method invocation expressions, 15.12
- named
packages, 7.4.1
-
- @Target, <IP_ADDRESS>
- names,
6
- names
and identifiers, 6.2
-
- compile-time declaration of a method reference, 15.13.1
- import declarations, 7.5
- local class declarations, 14.3
- named packages, 7.4.1
- shadowing and obscuring, 6.4
-
narrowing primitive conversion, 5.1.3
-
- casting contexts, 5.5
- floating-point operations, 4.2.4
- narrowing primitive conversion, 5.1.3
- postfix decrement operator --, 15.14.3
- postfix increment operator ++, 15.14.2
- prefix decrement operator --, 15.15.2
- prefix increment operator ++, 15.15.1
- widening and narrowing primitive conversion, 5.1.4
-
narrowing reference conversion, 5.1.6
-
- casting contexts, 5.5
- native
methods, <IP_ADDRESS>, 13.4.18
-
- method body, 8.4.7
- new
keyword, 15.9
-
- conditional operator ? :, 15.25, 15.25
- constructor declarations, 8.8, 8.8
- constructor overloading, 8.8.8
- creation of new class instances, 12.5
- exception analysis of expressions, 11.2.1
- form of a binary, 13.1
- forms of expressions, 15.2
- functional interfaces, 9.8
- initial values of variables, 4.12.5, 4.12.5
- instance initializers, 8.6
- invocation contexts, 5.3
- invocation type inference, 18.5.2, 18.5.2
- kinds of variables, 4.12.3
- method reference expressions, 15.13
- names and identifiers, 6.2
- objects, 4.3.1, 4.3.1
- return statement, 14.17
- run-time handling of an exception, 11.3
- String conversion, 5.1.11
- syntactic classification of a name according to context, 6.5.1,
6.5.1, 6.5.1
- types, classes, and interfaces, 4.12.6
- where types are used, 4.11, 4.11, 4.11,
4.11
-
non-atomic treatment of double and long, 17.7
- normal
and abrupt completion of evaluation, 15.6
-
- causes of Exceptions, 11.1.2
- normal and abrupt completion of statements, 14.1,
14.1
- run-time handling of an exception, 11.3
- normal
and abrupt completion of statements, 14.1
-
- interface method body, 9.4.3
- method body, 8.4.7
- normal and abrupt completion of evaluation, 15.6
- run-time handling of an exception, 11.3
- normal
annotations, 9.7.1
-
- annotations, 9.7
- defaults for annotation type elements, 9.6.2
- names and identifiers, 6.2
- syntactic classification of a name according to context, 6.5.1
-
notation, 1.3
-
notification, 17.2.2
- null
literal, 3.10.7
-
- compile-time step 3: is the chosen method appropriate?, 15.12.3
- identifiers, 3.8
- kinds of types and values, 4.1
- lexical literals, 15.8.1
-
numeric conditional expressions, 15.25.2
-
numeric contexts, 5.6
-
- floating-point operations, 4.2.4
- integer operations, 4.2.2
-
numerical comparison operators <,
<=, >, and >=, 15.20.1
-
- binary numeric promotion, 5.6.2
- floating-point operations, 4.2.4
- floating-point types, formats, and values, 4.2.3
- integer operations, 4.2.2
-
numerical equality operators == and !=, 15.21.1
-
- binary numeric promotion, 5.6.2
- floating-point operations, 4.2.4
- floating-point types, formats, and values, 4.2.3
- integer operations, 4.2.2
O
- object
creation, 12.5
-
- constructor declarations, 8.8
- field initialization, 8.3.2
- form of a binary, 13.1
- instance initializers, 8.6
- run-time evaluation of class instance creation expressions, 15.9.4
- static fields, <IP_ADDRESS>
- String concatenation operator +, 15.18.1
- when initialization occurs, 12.4.1
-
objects, 4.3.1, 4.3.2
-
- checked casts at run time, 5.5.3,
5.5.3
- method invocation type, <IP_ADDRESS>
- String literals, 3.10.5
-
obscuring, 6.4.2
-
- labeled statements, 14.7
- shadowing, 6.4.1
-
observability of a package, 7.4.3
-
- qualified package names, <IP_ADDRESS>
- scope of a declaration, 6.3
-
observable behavior and nonterminating executions, 17.4.9
-
- actions, 17.4.2, 17.4.2
-
operators, 3.12
-
- input elements and tokens, 3.5
- lexical grammar, 2.2
-
operators ++ and --, 16.1.9
-
organization of the specification, 1.1
- other
expressions, 16.1.10
- other
expressions of type boolean, 16.1.7
-
overload resolution, 15.12.2, <IP_ADDRESS>, <IP_ADDRESS>,
<IP_ADDRESS>, <IP_ADDRESS>,
<IP_ADDRESS>
-
- choosing the constructor and its arguments, 15.9.3,
15.9.3, 15.9.3
- choosing the most specific method, <IP_ADDRESS>
- compile-time declaration of a method reference, 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
- compile-time step 1: determine class or interface to search, 15.12.1
- compile-time step 2: determine
method Signature, 15.12.2, 15.12.2, 15.12.2, 15.12.2, 15.12.2, 15.12.2, 15.12.2, 15.12.2
- conditional operator ? :, 15.25, 15.25
- enum constants, 8.9.1
- invocation applicability inference, 18.5.1,
18.5.1
- invocation type inference, 18.5.2
- method and constructor overloading, 13.4.23
- more specific method inference, 18.5.4,
18.5.4, 18.5.4,
18.5.4, 18.5.4
- overloading, 8.4.9
- phase 1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>,
<IP_ADDRESS>, <IP_ADDRESS>
- phase 2: identify matching arity
methods applicable by loose invocation, <IP_ADDRESS>,
<IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>
- phase 3: identify methods
applicable by variable arity invocation, <IP_ADDRESS>,
<IP_ADDRESS>, <IP_ADDRESS>
- what binary compatibility is and is not, 13.2
-
overloading, 8.4.9, 9.4.2
-
- constructor overloading, 8.8.8
-
overriding (by instance methods), <IP_ADDRESS>, <IP_ADDRESS>
-
- final classes, <IP_ADDRESS>
- locate method to invoke, <IP_ADDRESS>
- superinterfaces, 8.1.5
P
-
package declarations, 7.4
-
- compilation units, 7.3
- declarations, 6.1
-
package members, 7.1
-
packages, 7
-
parameterized types, 4.5
-
- annotation type elements, 9.6.1
- capture conversion, 5.1.10, 5.1.10
- checked casts and unchecked casts, 5.5.2
- class literals, 15.8.2
- declarations, 6.1
- determining the class being instantiated, 15.9.1
- field declarations, 13.4.8
- functional interfaces, 9.8
- generic classes and type parameters, 8.1.2
- generic interfaces and type parameters, 9.1.2
- method and constructor formal parameters, 13.4.14
- method reference expressions, 15.13
- method result type, 13.4.15
- normal annotations, 9.7.1
- raw types, 4.8
- reference type casting, 5.5.1
- reference types and values, 4.3
- superclasses and subclasses, 8.1.4
- superinterfaces, 8.1.5
- superinterfaces and subinterfaces, 9.1.3
- type erasure, 4.6
- types, classes, and interfaces, 4.12.6
- where types are used, 4.11
-
parenthesized expressions, 15.8.5
-
- conditional operator ? :, 15.25, 15.25
- constant expressions, 15.28
- forms of expressions, 15.2
- identify potentially applicable methods, <IP_ADDRESS>
- phase 1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>
- phase
1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>
-
- compile-time declaration of a method reference, 15.13.1,
15.13.1, 15.13.1, 15.13.1, 15.13.1
- compile-time step 2: determine
method Signature, 15.12.2, 15.12.2
- invocation applicability inference, 18.5.1
- more specific method inference, 18.5.4
- phase 2: identify matching arity
methods applicable by loose invocation, <IP_ADDRESS>
- phase 3: identify methods
applicable by variable arity invocation, <IP_ADDRESS>
- phase
2: identify matching arity
methods applicable by loose invocation, <IP_ADDRESS>
-
- compile-time declaration of a method reference, 15.13.1,
15.13.1
- compile-time step 2: determine
method Signature, 15.12.2, 15.12.2
- more specific method inference, 18.5.4
- phase 1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>
- phase
3: identify methods
applicable by variable arity invocation, <IP_ADDRESS>
-
- choosing the constructor and its arguments, 15.9.3
- choosing the most specific method, <IP_ADDRESS>
- compile-time declaration of a method reference, 15.13.1,
15.13.1
- compile-time step 2: determine
method Signature, 15.12.2, 15.12.2
- invocation applicability inference, 18.5.1
- invocation type inference, 18.5.2
- more specific method inference, 18.5.4
- phase 2: identify matching arity
methods applicable by loose invocation, <IP_ADDRESS>
- poly
expressions, 15.2
-
- boolean conditional expressions, 15.25.1
- choosing the most specific method, <IP_ADDRESS>
- class instance creation
expressions, 15.9
- conditional operator ? :, 15.25, 15.25
- expression compatibility constraints, 18.2.1, 18.2.1
- identify potentially applicable methods, <IP_ADDRESS>
- lambda expressions, 15.27
- method reference expressions, 15.13
- more specific method inference, 18.5.4
- numeric conditional expressions, 15.25.2
- parenthesized expressions, 15.8.5
-
postfix decrement operator --, 15.14.3
-
- floating-point operations, 4.2.4, 4.2.4
- integer operations, 4.2.2, 4.2.2
- normal and abrupt completion of evaluation, 15.6
- operators ++ and --, 16.1.9
- variables, 4.12
-
postfix expressions, 15.14
-
- final variables, 4.12.4
- forms of expressions, 15.2
- syntactic classification of a name according to context, 6.5.1
-
postfix increment operator ++, 15.14.2
-
- floating-point operations, 4.2.4, 4.2.4
- integer operations, 4.2.2, 4.2.2
- normal and abrupt completion of evaluation, 15.6
- operators ++ and --, 16.1.9
- variables, 4.12
-
potentially applicable methods, <IP_ADDRESS>
-
- compile-time declaration of a method reference, 15.13.1,
15.13.1, 15.13.1
- compile-time step 1: determine class or interface to search, 15.12.1
- compile-time step 2: determine
method Signature, 15.12.2
- phase 1: identify matching arity
methods applicable by strict invocation, <IP_ADDRESS>
- phase 2: identify matching arity
methods applicable by loose invocation, <IP_ADDRESS>
- phase 3: identify methods
applicable by variable arity invocation, <IP_ADDRESS>
-
predefined annotation types, 9.6.4
- prefix
decrement operator --, 15.15.2
-
- floating-point operations, 4.2.4, 4.2.4
- integer operations, 4.2.2, 4.2.2
- normal and abrupt completion of evaluation, 15.6
- operators ++ and --, 16.1.9
- variables, 4.12
- prefix
increment operator ++, 15.15.1
-
- floating-point operations, 4.2.4, 4.2.4
- integer operations, 4.2.2, 4.2.2
- normal and abrupt completion of evaluation, 15.6
- operators ++ and --, 16.1.9
- variables, 4.12
-
preparation of a class or interface type, 12.3.2
-
- kinds of variables, 4.12.3
- link test: verify, prepare, (optionally) resolve, 12.1.2
-
preventing instantiation of a class, 8.8.10
-
- constructor declarations, 8.8
-
primary expressions, 15.8
-
- access to a protected member, <IP_ADDRESS>
- forms of expressions, 15.2
- postfix expressions, 15.14
-
primitive types and values, 4.2
-
- class literals, 15.8.2
- conditional operator ? :, 15.25
- evaluation, denotation, and result, 15.1
- kinds of types and values, 4.1
- literals, 3.10
- reifiable types, 4.7
- unboxing conversion, 5.1.8
- variables, 4.12
- where types are used, 4.11
-
program exit, 12.8
-
programs and program order, 17.4.3
-
- happens-before order, 17.4.5
- synchronization order, 17.4.4
- public
classes, 13.4.3
- public
interfaces, 13.5.1
Q
-
qualified access to a protected constructor, <IP_ADDRESS>
-
qualified expression names, <IP_ADDRESS>
-
- access control, 6.6
- constant expressions, 15.28
- field access expressions, 15.11
- field declarations, 8.3
- members and constructors of parameterized types, 4.5.2
-
qualified package names, <IP_ADDRESS>
-
qualified packageortypenames, <IP_ADDRESS>
-
qualified this, 15.8.4
-
- declarations, 6.1
- syntactic classification of a name according to context, 6.5.1
-
qualified type names, <IP_ADDRESS>
-
- access control, 6.6
- members and constructors of parameterized types, 4.5.2
- single-static-import declarations, 7.5.3
- single-type-import declarations, 7.5.1
- static-import-on-demand declarations, 7.5.4
- type-import-on-demand declarations, 7.5.2
R
- raw
types, 4.8
-
- assignment contexts, 5.2
- functional interfaces, 9.8
- invocation contexts, 5.3
- method reference expressions, 15.13
- reifiable types, 4.7
- subtyping among class and interface types, 4.10.2
- type arguments of parameterized types, 4.5.1
- unchecked conversion, 5.1.9
- variables of reference type, 4.12.2
- where types are used, 4.11
-
reading final fields during construction, 17.5.2
-
reclassification of contextually ambiguous names, 6.5.2
-
- method invocation expressions, 15.12
-
reduction, 18.2
-
- invocation applicability inference, 18.5.1
-
reference conditional expressions, 15.25.3
-
reference equality operators == and !=, 15.21.3
-
- objects, 4.3.1
-
reference type casting, 5.5.1
-
- casting contexts, 5.5
-
reference types and values, 4.3
-
- class literals, 15.8.2
- evaluation, denotation, and result, 15.1
- initial values of variables, 4.12.5
- kinds of types and values, 4.1
- variables, 4.12
-
references, 1.6
-
reifiable types, 4.7
-
- @SafeVarargs, <IP_ADDRESS>
- array creation expressions, 15.10.1
- array initializers, 10.6
- expressions and run-time checks, 15.5, 15.5
- formal parameters, 8.4.1
- method reference expressions, 15.13
- type comparison operator instanceof, 15.20.2
-
relational operators, 15.20
-
- constant expressions, 15.28
-
relationship to predefined classes and interfaces, 1.4
-
remainder operator %, 15.17.3
-
- evaluate operands before operation, 15.7.2
- floating-point operations, 4.2.4
- integer operations, 4.2.2
- normal and abrupt completion of evaluation, 15.6
-
repeatable annotation types, 9.6.3
-
- @Repeatable, <IP_ADDRESS>
- evolution of annotation types, 13.5.7
- multiple annotations of the same type, 9.7.5
-
requirements in overriding, <IP_ADDRESS>
-
- variables of reference type, 4.12.2
-
requirements in overriding and hiding, <IP_ADDRESS>
-
- compile-time checking of Exceptions, 11.2
- method throws, 8.4.6
- requirements in overriding, <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>
- type of a lambda expression, 15.27.3
- type of a method reference, 15.13.2
- variables of reference type, 4.12.2
-
resolution, 18.4
-
- invocation applicability inference, 18.5.1
- invocation type inference, 18.5.2
-
resolution of symbolic references, 12.3.3
-
- link test: verify, prepare, (optionally) resolve, 12.1.2
- return
statement, 14.17
-
- break, continue, return, and throw statements, 16.2.13
- constructor body, 8.8.7, 8.8.7
- instance initializers, 8.6
- interface method body, 9.4.3
- method body, 8.4.7
- normal and abrupt completion of statements, 14.1
- static initializers, 8.7
-
run-time evaluation of array access expressions, 15.10.4
-
- array access, 10.4
- evaluation order for other expressions, 15.7.5
- normal and abrupt completion of evaluation, 15.6,
15.6
-
run-time evaluation of array creation expressions, 15.10.2
-
- evaluation order for other expressions, 15.7.5
- initial values of variables, 4.12.5
- kinds of variables, 4.12.3
- normal and abrupt completion of evaluation, 15.6,
15.6
-
run-time evaluation of class instance creation expressions, 15.9.4
-
- evaluation order for other expressions, 15.7.5
- normal and abrupt completion of evaluation, 15.6
- throw statement, 14.18
-
run-time evaluation of lambda expressions, 15.27.4
-
- creation of new class instances, 12.5
- evaluation order for other expressions, 15.7.5
- normal and abrupt completion of evaluation, 15.6
-
run-time evaluation of method invocation, 15.12.4
-
- evaluation order for other expressions, 15.7.5
- overloading, 8.4.9
-
run-time evaluation of method references, 15.13.3
-
- creation of new class instances, 12.5
- evaluation order for other expressions, 15.7.5
- normal and abrupt completion of evaluation, 15.6
-
run-time handling of an exception, 11.3
-
- expressions and run-time checks, 15.5
- initial values of variables, 4.12.5
- kinds of variables, 4.12.3
- throw statement, 14.18
- try statement, 14.20
S
- scope
of a declaration, 6.3
-
- basic for statement, 14.14.1
- class body and member declarations, 8.1.6
- class declarations, 8.1
- class literals, 15.8.2
- compile-time step 1: determine class or interface to search, 15.12.1
- enhanced for statement, 14.14.2,
14.14.2
- enum constants, 8.9.1
- field (constant) declarations, 9.3
- field declarations, 8.3
- formal parameters, 8.4.1
- forward references during field initialization, 8.3.3
- generic classes and type parameters, 8.1.2
- generic constructors, 8.8.4
- generic interfaces and type parameters, 9.1.2
- generic methods, 8.4.4
- import declarations, 7.5
- interface body and member declarations, 9.1.4
- interface declarations, 9.1
- lambda parameters, 15.27.1
- local class declarations, 14.3
- local variable declarators and types, 14.4.1
- member type declarations, 8.5
- method declarations, 8.4
- named packages, 7.4.1
- reclassification of contextually ambiguous names, 6.5.2,
6.5.2
- simple package names, <IP_ADDRESS>
- top level type declarations, 7.6
- try statement, 14.20
- try-with-resources, 14.20.3
- type variables, 4.4
-
semantics of final fields, 17.5.1
-
separators, 3.11
-
- lexical grammar, 2.2
-
shadowing, 6.4.1
-
- compile-time step 1: determine class or interface to search, 15.12.1
- obscuring, 6.4.2
- scope of a declaration, 6.3
- simple expression names, <IP_ADDRESS>
-
shadowing and obscuring, 6.4
-
- basic for statement, 14.14.1
- class body and member declarations, 8.1.6
- class declarations, 8.1
- enhanced for statement, 14.14.2
- enum constants, 8.9.1
- field (constant) declarations, 9.3
- field declarations, 8.3
- formal parameters, 8.4.1
- generic classes and type parameters, 8.1.2
- generic constructors, 8.8.4
- import declarations, 7.5
- interface declarations, 9.1
- lambda parameters, 15.27.1
- local class declarations, 14.3
- local variable declarators and types, 14.4.1
- member type declarations, 8.5
- method declarations, 8.4
- named packages, 7.4.1
- top level type declarations, 7.6
- try statement, 14.20
- try-with-resources, 14.20.3
- shared
variables, 17.4.1
-
- happens-before order, 17.4.5
- shift
operators, 15.19
-
- constant expressions, 15.28
- integer operations, 4.2.2
- unary numeric promotion, 5.6.1
- simple
assignment operator =, 15.26.1
-
- assignment contexts, 5.2
- expressions and run-time checks, 15.5, 15.5
- normal and abrupt completion of evaluation, 15.6,
15.6
- simple
expression names, <IP_ADDRESS>
-
- constant expressions, 15.28
- field access expressions, 15.11
- simple
method names, <IP_ADDRESS>
-
- method declarations, 8.4
- simple
package names, <IP_ADDRESS>
- simple
packageortypenames, <IP_ADDRESS>
- simple
type names, <IP_ADDRESS>
-
single-element annotations, 9.7.3
-
- annotation type elements, 9.6.1
- annotations, 9.7
-
single-static-import declarations, 7.5.3
-
- declarations, 6.1, 6.1
- identify potentially applicable methods, <IP_ADDRESS>
- import declarations, 7.5
- reclassification of contextually ambiguous names, 6.5.2,
6.5.2
- scope of a declaration, 6.3
- simple method names, <IP_ADDRESS>
- single-type-import declarations, 7.5.1
- syntactic classification of a name according to context, 6.5.1
-
single-type-import declarations, 7.5.1
-
- declarations, 6.1, 6.1
- import declarations, 7.5
- reclassification of contextually ambiguous names, 6.5.2
- scope of a declaration, 6.3
- single-static-import declarations, 7.5.3
- syntactic classification of a name according to context, 6.5.1
- sleep
and yield, 17.3
-
standalone expressions, 15.2
-
- boolean conditional expressions, 15.25.1
- choosing the most specific method, <IP_ADDRESS>
- class instance creation
expressions, 15.9
- conditional operator ? :, 15.25, 15.25
- expression compatibility constraints, 18.2.1, 18.2.1
- identify potentially applicable methods, <IP_ADDRESS>
- lambda expressions, 15.27
- method reference expressions, 15.13
- more specific method inference, 18.5.4
- numeric conditional expressions, 15.25.2
- parenthesized expressions, 15.8.5
-
statements, 14.5
- static
fields, <IP_ADDRESS>, 13.4.10
-
- generic classes and type parameters, 8.1.2
- kinds of variables, 4.12.3, 4.12.3
- when initialization occurs, 12.4.1
- static
initializers, 8.7, 13.4.25
-
- class body and member declarations, 8.1.6
- definite assignment and static initializers, 16.8
- exception checking, 11.2.3
- final fields, <IP_ADDRESS>
- generic classes and type parameters, 8.1.2
- inner classes and enclosing instances, 8.1.3
- return statement, 14.17
- simple expression names, <IP_ADDRESS>
- static initializers, 13.4.25
- throw statement, 14.18
- static
member type declarations, 8.5.1
-
- anonymous class declarations, 15.9.5
- class modifiers, 8.1.1
- generic classes and type parameters, 8.1.2
- interface modifiers, 9.1.1, 9.1.1
- static
methods, <IP_ADDRESS>, 13.4.19
-
- generic classes and type parameters, 8.1.2
- interface method declarations, 13.5.6
- simple expression names, <IP_ADDRESS>
-
static-import-on-demand declarations, 7.5.4
-
- declarations, 6.1, 6.1
- identify potentially applicable methods, <IP_ADDRESS>
- import declarations, 7.5
- reclassification of contextually ambiguous names, 6.5.2,
6.5.2
- scope of a declaration, 6.3
- simple method names, <IP_ADDRESS>
- syntactic classification of a name according to context, 6.5.1
- type-import-on-demand declarations, 7.5.2
-
strictfp classes, <IP_ADDRESS>
-
- fp-strict expressions, 15.4
-
strictfp interfaces, <IP_ADDRESS>
-
- fp-strict expressions, 15.4
-
strictfp methods, <IP_ADDRESS>
-
- fp-strict expressions, 15.4
- String
concatenation operator +, 15.18.1
-
- boolean type and boolean values, 4.2.5
- class String, 4.3.3
- constructor declarations, 8.8
- creation of new class instances, 12.5
- floating-point operations, 4.2.4
- integer operations, 4.2.2
- normal and abrupt completion of evaluation, 15.6
- objects, 4.3.1, 4.3.1
- String contexts, 5.4
- types, classes, and interfaces, 4.12.6
- String
contexts, 5.4
-
- boolean type and boolean values, 4.2.5
- String
conversion, 5.1.11
-
- String concatenation operator +, 15.18.1
- String contexts, 5.4
- String
literals, 3.10.5
-
- class String, 4.3.3
- comments, 3.7
- constant expressions, 15.28
- creation of new class instances, 12.5
- escape sequences for character and String literals, 3.10.6
- lexical literals, 15.8.1
- reference equality operators == and !=, 15.21.3
- unicode, 3.1
-
strings, 4.3.3
-
- lexical literals, 15.8.1
- literals, 3.10
- objects, 4.3.1
- String literals, 3.10.5, 3.10.5
-
subsequent modification of final fields, 17.5.3
-
subtyping, 4.10
-
- assignment contexts, 5.2
- checked casts and unchecked casts, 5.5.2
- choosing the most specific method, <IP_ADDRESS>
- constraint formulas, 18.1.2
- invocation contexts, 5.3
- method throws, 8.4.6
- narrowing reference conversion, 5.1.6
- parameterized types, 4.5
- subtyping constraints, 18.2.3
- type arguments of parameterized types, 4.5.1, 4.5.1
- widening reference conversion, 5.1.5
-
subtyping among array types, 4.10.3
-
- array types, 10.1
-
subtyping among class and interface types, 4.10.2
-
- try statement, 14.20
-
subtyping among primitive types, 4.10.1
-
subtyping constraints, 18.2.3
-
superclasses and subclasses, 8.1.4
-
- class members, 8.2
- class Object, 4.3.2
- enum types, 8.9
- final classes, <IP_ADDRESS>
- kinds of variables, 4.12.3
- loading process, 12.2.1
- subtyping among class and interface types, 4.10.2
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11, 4.11
-
superclasses and superinterfaces, 13.4.4
-
- loading process, 12.2.1
- superinterfaces, 13.5.2
- verification of the binary representation, 12.3.1
-
superinterfaces, 8.1.5, 13.5.2
-
- checked casts at run time, 5.5.3
- class members, 8.2
- subtyping among class and interface types, 4.10.2
- superinterfaces and subinterfaces, 9.1.3
- syntactic classification of a name according to context, 6.5.1
- types, classes, and interfaces, 4.12.6
- when initialization occurs, 12.4.1
- where types are used, 4.11, 4.11
-
superinterfaces and subinterfaces, 9.1.3
-
- interface members, 9.2
- loading process, 12.2.1
- subtyping among class and interface types, 4.10.2
- superclasses and subclasses, 8.1.4
- superinterfaces, 8.1.5
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11, 4.11
- switch
statement, 14.11
-
- scope of a declaration, 6.3, 6.3
- switch statements, 16.2.9
- switch
statements, 16.2.9
-
synchronization, 17.1
-
- objects, 4.3.1
- synchronized methods, <IP_ADDRESS>
- synchronized statement, 14.19
- volatile fields, <IP_ADDRESS>
-
synchronization order, 17.4.4
-
- actions, 17.4.2
- interaction with the memory model, 12.6.2
-
synchronized methods, <IP_ADDRESS>, 13.4.20
-
- class Object, 4.3.2
- synchronization, 17.1
- synchronized statement, 14.19
-
synchronized statement, 14.19
-
- create frame, synchronize, transfer control, <IP_ADDRESS>
- objects, 4.3.1
- synchronization, 17.1
- synchronized statements, 16.2.14
-
synchronized statements, 16.2.14
-
syntactic classification of a name according to context, 6.5.1
-
- access control, 6.6
- declarations, 6.1
- reference types and values, 4.3
-
syntactic grammar, 2.3
-
- compilation units, 7.3
- input elements and tokens, 3.5
- lexical translations, 3.2
-
syntax, 19
T
- this,
15.8.3
-
- field initialization, 8.3.2, 8.3.2
- initialization of fields in interfaces, 9.3.1
- instance initializers, 8.6
- static initializers, 8.7
- static methods, <IP_ADDRESS>
-
threads and locks, 17
-
- objects, 4.3.1
- throw statement, 14.18
- throw
statement, 14.18
-
- break, continue, return, and throw statements, 16.2.13
- causes of Exceptions, 11.1.2
- exception analysis of statements, 11.2.2
- initial values of variables, 4.12.5
- kinds of variables, 4.12.3
- normal and abrupt completion of statements, 14.1,
14.1
- run-time handling of an exception, 11.3
- top
level type declarations, 7.6
-
- class instance creation
expressions, 15.9
- class modifiers, 8.1.1
- compilation units, 7.3
- determining accessibility, 6.6.1
- form of a binary, 13.1
- host support for packages, 7.2
- interface modifiers, 9.1.1
- package members, 7.1, 7.1
- scope of a declaration, 6.3, 6.3, 6.3
- shadowing, 6.4.1
- single-static-import declarations, 7.5.3
- single-type-import declarations, 7.5.1
- when initialization occurs, 12.4.1
-
transient fields, <IP_ADDRESS>, 13.4.11
- try
statement, 14.20
-
- @Target, <IP_ADDRESS>
- compile-time checking of Exceptions, 11.2
- declarations, 6.1, 6.1
- definite assignment and parameters, 16.3
- exception analysis of statements, 11.2.2
- expressions and run-time checks, 15.5, 15.5
- final variables, 4.12.4, 4.12.4
- initial values of variables, 4.12.5
- kinds of variables, 4.12.3
- labeled statements, 14.7
- method throws, 8.4.6
- reclassification of contextually ambiguous names, 6.5.2
- run-time handling of an exception, 11.3
- scope of a declaration, 6.3
- shadowing and obscuring, 6.4
- shared variables, 17.4.1
- syntactic classification of a name according to context, 6.5.1
- throw statement, 14.18, 14.18, 14.18
- try statements, 16.2.15
- where types are used, 4.11, 4.11
- try
statements, 16.2.15
-
try-catch statement, 14.20.1
-
- try statement, 14.20
-
try-catch-finally statement, 14.20.2
-
- try statement, 14.20
-
try-finally statement, 14.20.2
-
- try statement, 14.20
-
try-with-resources, 14.20.3
-
- @Target, <IP_ADDRESS>
- final variables, 4.12.4
- local variable declaration statements, 14.4
- scope of a declaration, 6.3
- syntactic classification of a name according to context, 6.5.1
- try statement, 14.20
- where types are used, 4.11
-
try-with-resources (basic), <IP_ADDRESS>
-
try-with-resources (extended), <IP_ADDRESS>
- type
arguments of parameterized types, 4.5.1
-
- capture conversion, 5.1.10
- checked casts and unchecked casts, 5.5.2
- class instance creation
expressions, 15.9, 15.9
- constraint formulas, 18.1.2
- explicit constructor invocations, <IP_ADDRESS>
- method invocation expressions, 15.12
- method reference expressions, 15.13
- reference types and values, 4.3
- reifiable types, 4.7
- subtyping among class and interface types, 4.10.2
- subtyping constraints, 18.2.3
- type equality constraints, 18.2.4
- types, classes, and interfaces, 4.12.6
- unchecked conversion, 5.1.9
- where types are used, 4.11
- type
comparison operator instanceof, 15.20.2
-
- expressions and run-time checks, 15.5
- objects, 4.3.1
- syntactic classification of a name according to context, 6.5.1
- where types are used, 4.11, 4.11
- type
compatibility constraints, 18.2.2
- type
equality constraints, 18.2.4
- type
erasure, 4.6
-
- assignment contexts, 5.2
- cast expressions, 15.16
- checked casts and unchecked casts, 5.5.2
- checked casts at run time, 5.5.3
- choosing the most specific method, <IP_ADDRESS>
- class Object, 4.3.2
- class type parameters, 13.4.5
- compile-time step 3: is the chosen method appropriate?, 15.12.3
- constructor Signature, 8.8.2
- create frame, synchronize, transfer control, <IP_ADDRESS>
- declarations, 6.1
- evaluate arguments, <IP_ADDRESS>
- field declarations, 13.4.8
- form of a binary, 13.1, 13.1, 13.1
- invocation contexts, 5.3
- method and constructor formal parameters, 13.4.14
- method and constructor type parameters, 13.4.13
- method invocation type, <IP_ADDRESS>
- method result type, 13.4.15
- method Signature, 8.4.2
- raw types, 4.8
- requirements in overriding and hiding, <IP_ADDRESS>
- type variables, 4.4
- type
inference, 18
-
- compile-time step 2: determine
method Signature, 15.12.2
- generic constructors, 8.8.4
- generic methods, 8.4.4
- type
of a constructor, 8.8.6
-
- members and constructors of parameterized types, 4.5.2
- type
of a lambda expression, 15.27.3
-
- checked exception constraints, 18.2.5
- expression compatibility constraints, 18.2.1
- invocation type inference, 18.5.2, 18.5.2
- lambda parameters, 15.27.1
- type
of a method reference, 15.13.2
-
- checked exception constraints, 18.2.5
- type
of an expression, 15.3
- type
variables, 4.4
-
- class literals, 15.8.2
- field declarations, 13.4.8
- generic classes and type parameters, 8.1.2
- generic constructors, 8.8.4
- generic interfaces and type parameters, 9.1.2
- generic methods, 8.4.4
- intersection types, 4.9
- method and constructor formal parameters, 13.4.14
- method result type, 13.4.15
- reference types and values, 4.3
- type erasure, 4.6
- types, classes, and interfaces, 4.12.6
- where types are used, 4.11
-
type-import-on-demand declarations, 7.5.2
-
- declarations, 6.1
- import declarations, 7.5
- reclassification of contextually ambiguous names, 6.5.2
- scope of a declaration, 6.3
- shadowing, 6.4.1
- static-import-on-demand declarations, 7.5.4
- syntactic classification of a name according to context, 6.5.1
- types,
4.1
-
- capture conversion, 5.1.10
- lexical literals, 15.8.1
- literals, 3.10
- null literal, 3.10.7
- throw statement, 14.18
- types,
classes, and interfaces, 4.12.6
- types,
values, and variables, 4
U
- unary
minus operator -, 15.15.4
-
- constant expressions, 15.28
- floating-point operations, 4.2.4
- integer literals, 3.10.1, 3.10.1
- integer operations, 4.2.2
- unary numeric promotion, 5.6.1
- unary
numeric promotion, 5.6.1
-
- array access, 10.4
- array access expressions, 15.10.3
- array creation expressions, 15.10.1
- bitwise complement operator ~, 15.15.5
- numeric contexts, 5.6
- shift operators, 15.19
- unary minus operator -, 15.15.4
- unary plus operator +, 15.15.3
- unary
operators, 15.15
-
- final variables, 4.12.4
- unary
plus operator +, 15.15.3
-
- constant expressions, 15.28
- floating-point operations, 4.2.4
- integer operations, 4.2.2
- unary numeric promotion, 5.6.1
-
unboxing conversion, 5.1.8
-
- additive operators, 15.18, 15.18
- array creation expressions, 15.10.1
- assert statement, 14.10
- assignment contexts, 5.2
- binary numeric promotion, 5.6.2
- bitwise complement operator ~, 15.15.5
- boolean equality operators == and !=, 15.21.2
- boolean logical operators &, ^, and |, 15.22.2
- casting contexts, 5.5, 5.5, 5.5
- conditional operator ? :, 15.25, 15.25
- conditional-and operator &&, 15.23,
15.23
- conditional-or operator ||, 15.24,
15.24
- do statement, 14.13
- equality operators, 15.21
- floating-point operations, 4.2.4
- if-then statement, 14.9.1
- if-then-else statement, 14.9.2
- integer bitwise operators &, ^, and |, 15.22.1
- integer operations, 4.2.2
- invocation contexts, 5.3
- iteration of for statement, <IP_ADDRESS>
- logical complement operator !, 15.15.6
- multiplicative operators, 15.17
- numeric contexts, 5.6
- numerical comparison operators <,
<=, >, and >=, 15.20.1
- numerical equality operators == and !=, 15.21.1
- postfix decrement operator --, 15.14.3
- postfix increment operator ++, 15.14.2
- prefix decrement operator --, 15.15.2
- prefix increment operator ++, 15.15.1
- switch statement, 14.11
- unary minus operator -, 15.15.4
- unary numeric promotion, 5.6.1,
5.6.1
- unary plus operator +, 15.15.3
- while statement, 14.12
-
unchecked conversion, 5.1.9
-
- @SafeVarargs, <IP_ADDRESS>
- assignment contexts, 5.2
- casting contexts, 5.5, 5.5
- invocation contexts, 5.3
- method result, 8.4.5
- type compatibility constraints, 18.2.2
- variables of reference type, 4.12.2
-
unicode, 3.1
-
- character literals, 3.10.4
- lexical grammar, 2.2
- primitive types and values, 4.2
- unicode escapes, 3.3
-
unicode escapes, 3.3
-
- escape sequences for character and String literals, 3.10.6
- input elements and tokens, 3.5
- lexical translations, 3.2
- unicode, 3.1
-
unloading of classes and interfaces, 12.7
-
- kinds of variables, 4.12.3
-
unnamed packages, 7.4.2
-
- compilation units, 7.3
-
unreachable statements, 14.21
-
- final fields and static constant variables, 13.4.9
- instance initializers, 8.6
- lambda body, 15.27.2
- static initializers, 8.7
- uses
of inference, 18.5
V
- value
set conversion, 5.1.13
-
- assignment contexts, 5.2
- binary numeric promotion, 5.6.2
- casting contexts, 5.5
- compound assignment operators, 15.26.2,
15.26.2
- create frame, synchronize, transfer control, <IP_ADDRESS>
- evaluation, denotation, and result, 15.1
- floating-point types, formats, and values, 4.2.3
- fp-strict expressions, 15.4
- invocation contexts, 5.3
- simple assignment operator =, 15.26.1, 15.26.1
- unary minus operator -, 15.15.4
- unary numeric promotion, 5.6.1
-
variables, 4.12
-
- evaluation, denotation, and result, 15.1
-
variables of primitive type, 4.12.1
-
variables of reference type, 4.12.2
-
- @SafeVarargs, <IP_ADDRESS>
- type of an expression, 15.3
- variables, 4.12
-
verification of the binary representation, 12.3.1
-
- link test: verify, prepare, (optionally) resolve, 12.1.2
-
volatile fields, <IP_ADDRESS>
-
- happens-before order, 17.4.5
- synchronization order, 17.4.4
W
- wait,
17.2.1
-
- happens-before order, 17.4.5
- wait
sets and notification, 17.2
-
- class Object, 4.3.2
-
well-formed executions, 17.4.7
-
- executions, 17.4.6
- what
binary compatibility is and is not, 13.2
- when
initialization occurs, 12.4.1
-
- final variables, 4.12.4
- initialize test: execute initializers, 12.1.3
- when
reference types are the same, 4.3.4
-
- checked casts at run time, 5.5.3
- constraint formulas, 18.1.2
- type equality constraints, 18.2.4
- where
annotations may appear, 9.7.4
-
- annotation types, 9.6
- annotations, 9.7
- array types, 10.1
- class modifiers, 8.1.1
- constructor modifiers, 8.8.3
- enum constants, 8.9.1
- field (constant) declarations, 9.3
- field modifiers, 8.3.1
- formal parameters, 8.4.1
- generic classes and type parameters, 8.1.2
- generic interfaces and type parameters, 9.1.2
- interface modifiers, 9.1.1
- lambda parameters, 15.27.1
- local variable declaration statements, 14.4
- method declarations, 9.4
- method modifiers, 8.4.3
- named packages, 7.4.1
- where
types are used, 4.11
-
- @Target, <IP_ADDRESS>
- lexical translations, 3.2
- syntactic classification of a name according to context, 6.5.1
- where annotations may appear, 9.7.4
- while
statement, 14.12
-
- boolean type and boolean values, 4.2.5
- while statements, 16.2.10
- while
statements, 16.2.10
- white
space, 3.6
-
- input elements and tokens, 3.5
- lexical grammar, 2.2
- lexical translations, 3.2
-
widening and narrowing primitive conversion, 5.1.4
-
- casting contexts, 5.5
-
widening primitive conversion, 5.1.2
-
- assignment contexts, 5.2
- binary numeric promotion, 5.6.2
- casting contexts, 5.5, 5.5
- invocation contexts, 5.3, 5.3
- numeric contexts, 5.6
- unary numeric promotion, 5.6.1,
5.6.1
- widening and narrowing primitive conversion, 5.1.4
-
widening reference conversion, 5.1.5
-
- assignment contexts, 5.2
- casting contexts, 5.5, 5.5
- floating-point operations, 4.2.4
- integer operations, 4.2.2
- invocation contexts, 5.3, 5.3
- word
tearing, 17.6
-
write-protected fields, 17.5.4


Mohammed Shami break into top 10, secures career-best 7th Test ranking
by JKR StaffIndia’s Mohammed Shami has secured his career-best seventh in the ICC Test ranking. Shami attaining the seventh position in the latest ICC Test ranking is a massive jump of eight places by the bowler from Moradabad in Uttar Pradesh. There are three Indians namely Jasprit Bumrah, Shami and R Ashwin in the list of top ten bowlers from across the globe.
Shami has been devastating with his bowling in recent matches. His spell of 7 wickets during the just-concluded Test match in Indore helped India to defeat Bangladesh by an innings and 130 runs.
Pat Cummins of Australia has occupied the top place, while Kagiso Rabada of South Africa and Jason of West Indies are placed at second and third positions respectively. Shami’s teammate Jasprit Bumrah is at number four, James Anderson of England at number five, New Zealand’s Trent Boult at number six, while Ravichandran Ashwin has occupied the 10th place.
In the list of top 10 all-rounders, Ravindra Jadeja has occupied the second spot, while Ashwin is placed at number four.
The top 10 list of Test batsmen have Virat Kohli at number two after Australia’s Steve Smith, Cheteshwar Pujara at number four followed by Ajinkya Rahane at number five. Rohit Sharma has also broken into the list as he’s now placed at number 10.


Pay your tax, Zimra urges nation
Pride Mahlangu, Business Reporter
THE Zimbabwe Revenue Authority (Zimra) has urged citizens to voluntarily comply with tax payment to help generate adequate revenue for socio-economic development.
In an interview after a tax seminar held at the National University of Science and Technology in Bulawayo recently, Zimra head of corporate communications Mr Francis Chimanda said the forum was part of their wider campaign to create awareness on the importance of voluntary tax compliance.
“Zimra is trying to move away from a situation where it enforces tax obligations on people instead of them complying voluntarily. That’s basically what we are hoping for,” said Mr Chimanda.
This, Mr Chimanda said, would ensure everyone contributes to the betterment of the economy.
He said one of Zimra’s four pillars was partnerships and the authority believes that voluntary tax compliance is its top priority in fulfilling its mandate.
The seminar was held under the theme, “#Catch Them Young” which sought to create awareness among students on the importance of voluntary tax compliance.
A similar seminar was held at the University of Zimbabwe recently. – @pridesinstictz.