Starting with Java 5, java.lang.Class
type is generic, meaning that it can have a type parameter. By parameterized invocation of Class
the documentation means "Class<...>
with any kind of type parameters". You can find an example of it in the same document, e.g. the "Example 9.6.1-2":
interface Formatter {}
// Designates a formatter to pretty-print the annotated class
@interface PrettyPrinter {
Class<? extends Formatter> value();
// ^^^^^^^^^^^^^^^^^^^^^^^^^^------------ Here
}