com.sun.javadoc

## Interface ParameterizedType

- All Superinterfaces:
    Type

      public interface ParameterizedType
      extends Type

  Represents an invocation of a generic class or interface. For example, given the generic interface `List<E>`, possible invocations include:

             List<String>
             List<T extends Number>
             List<?>

  A generic inner class `Outer<T>.Inner<S>` might be invoked as:

             Outer<Number>.Inner<String>

  Since:
    1.5

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `ClassDoc` | `asClassDoc()` Return the generic class or interface that declared this type.
    `Type` | `containingType()` Return the type that contains this type as a member.
    `Type[]` | `interfaceTypes()` Return the interface types directly implemented by or extended by this parameterized type.
    `Type` | `superclassType()` Return the class type that is a direct supertype of this one.
    `Type[]` | `typeArguments()` Return the actual type arguments of this type.

    - ### Methods inherited from interface com.sun.javadoc.Type

      `asAnnotatedType, asAnnotationTypeDoc, asParameterizedType, asTypeVariable, asWildcardType, dimension, getElementType, isPrimitive, qualifiedTypeName, simpleTypeName, toString, typeName`

- - ### Method Detail

    - #### asClassDoc

          ClassDoc asClassDoc()

      Return the generic class or interface that declared this type.
      Specified by:
        `asClassDoc` in interface `Type`
      Returns:
        the generic class or interface that declared this type.

    - #### typeArguments

          Type[] typeArguments()

      Return the actual type arguments of this type. For a generic type that is nested within some other generic type (such as `Outer<T>.Inner<S>`), only the type arguments of the innermost type are included.
      Returns:
        the actual type arguments of this type.

    - #### superclassType

          Type superclassType()

      Return the class type that is a direct supertype of this one. This is the superclass of this type's declaring class, with type arguments substituted in. Return null if this is an interface type.

      For example, if this parameterized type is `java.util.ArrayList<String>`, the result will be `java.util.AbstractList<String>`.

      Returns:
        the class type that is a direct supertype of this one.

    - #### interfaceTypes

          Type[] interfaceTypes()

      Return the interface types directly implemented by or extended by this parameterized type. These are the interfaces directly implemented or extended by this type's declaring class or interface, with type arguments substituted in. Return an empty array if there are no interfaces.

      For example, the interface extended by `java.util.Set<String>` is `java.util.Collection<String>`.

      Returns:
        the interface types directly implemented by or extended by this parameterized type.

    - #### containingType

          Type containingType()

      Return the type that contains this type as a member. Return null is this is a top-level type.

      For example, the containing type of `AnInterface.Nested<Number>` is the `ClassDoc` representing `AnInterface`, and the containing type of `Outer<String>.Inner<Number>` is the `ParameterizedType` representing `Outer<String>`.

      Returns:
        the type that contains this type as a member.

Submit a bug or feature
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2017, Oracle and/or its affiliates. 500 Oracle Parkway
Redwood Shores, CA 94065 USA. All rights reserved.