javax.lang.model.type

## Interface DeclaredType

- All Superinterfaces:
    ReferenceType, TypeMirror
  All Known Subinterfaces:
    ErrorType

      public interface DeclaredType
      extends ReferenceType

  Represents a declared type, either a class type or an interface type. This includes parameterized types such as `java.util.Set<String>` as well as raw types.

  While a `TypeElement` represents a class or interface element, a `DeclaredType` represents a class or interface type, the latter being a use (or invocation) of the former. See `TypeElement` for more on this distinction.

  The supertypes (both class and interface types) of a declared type may be found using the `Types.directSupertypes(TypeMirror)` method. This returns the supertypes with any type arguments substituted in.

  This interface is also used to represent intersection types. An intersection type is implicit in a program rather than being explictly declared. For example, the bound of the type parameter `<T extends Number & Runnable>` is an intersection type. It is represented by a `DeclaredType` with `Number` as its superclass and `Runnable` as its lone superinterface.

  Since:
    1.6
  See Also:
    `TypeElement`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Element` | `asElement()` Returns the element corresponding to this type.
    `TypeMirror` | `getEnclosingType()` Returns the type of the innermost enclosing instance or a `NoType` of kind `NONE` if there is no enclosing instance.
    `List<? extends TypeMirror>` | `getTypeArguments()` Returns the actual type arguments of this type.

    - ### Methods inherited from interface javax.lang.model.type.TypeMirror

      `accept, equals, getKind, hashCode, toString`

- - ### Method Detail

    - #### asElement

          Element asElement()

      Returns the element corresponding to this type.
      Returns:
        the element corresponding to this type

    - #### getEnclosingType

          TypeMirror getEnclosingType()

      Returns the type of the innermost enclosing instance or a `NoType` of kind `NONE` if there is no enclosing instance. Only types corresponding to inner classes have an enclosing instance.
      Returns:
        a type mirror for the enclosing type
      See The Java Language Specification, Third Edition:
        8.1.3 Inner Classes and Enclosing Instances, 15.9.2 Determining Enclosing Instances

    - #### getTypeArguments

          List<? extends TypeMirror> getTypeArguments()

      Returns the actual type arguments of this type. For a type nested within a parameterized type (such as `Outer<String>.Inner<Number>`), only the type arguments of the innermost type are included.
      Returns:
        the actual type arguments of this type, or an empty list if none

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.