• An unbounded wildcard (§4.5.1)
• The ... in the type of a variable arity parameter (§8.4.1), to indicate an array type
• The simple name of a type in a constructor declaration (§8.8), to indicate the
class of the constructed object
The meaning of types in type contexts is given by:
• §4.2, for primitive types
• §4.4, for type parameters
• §4.5, for class and interface types that are parameterized, or appear either as type
arguments in a parameterized type or as bounds of wildcard type arguments in
a parameterized type
• §4.8, for class and interface types that are raw
• §4.9, for intersection types in the bounds of type parameters
• §6.5, for class and interface types in contexts where genericity is unimportant
(§6.1)
• §10.1, for array types