com.sun.mirror.type

## Interface DeclaredType

All Superinterfaces:
  ReferenceType, TypeMirror

All Known Subinterfaces:
  AnnotationType, ClassType, EnumType, InterfaceType

    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 `TypeDeclaration` represents the declaration of a class or interface, a `DeclaredType` represents a class or interface type, the latter being a use of the former. See `TypeDeclaration` for more on this distinction.

A `DeclaredType` may represent a type for which details (declaration, supertypes, etc.) are unknown. This may be the result of a processing error, such as a missing class file, and is indicated by `getDeclaration()` returning `null`. Other method invocations on such an unknown type will not, in general, return meaningful results.

Since:
  1.5

### Method Summary

Methods
`Collection<TypeMirror>` `getActualTypeArguments()` Returns (in order) the actual type arguments of this type.
`DeclaredType` `getContainingType()` Returns the type that contains this type as a member.
`TypeDeclaration` `getDeclaration()` Returns the declaration of this type.
`Collection<InterfaceType>` `getSuperinterfaces()` Returns the interface types that are direct supertypes of this type.

### Methods inherited from interface com.sun.mirror.type.TypeMirror

`accept, equals, toString`

### Method Detail

#### getDeclaration

    TypeDeclaration getDeclaration()

Returns the declaration of this type.

Returns null if this type's declaration is unknown. This may be the result of a processing error, such as a missing class file.

Returns:
  the declaration of this type, or null if unknown

#### getContainingType

    DeclaredType getContainingType()

Returns the type that contains this type as a member. Returns `null` if this is a top-level type.

For example, the containing type of `O.I<S>` is the type `O`, and the containing type of `O<T>.I<S>` is the type `O<T>`.

Returns:
  the type that contains this type, or `null` if this is a top-level type

#### getActualTypeArguments

    Collection<TypeMirror> getActualTypeArguments()

Returns (in order) the actual type arguments of this type. For a generic type nested within another generic 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 collection if there are none

#### getSuperinterfaces

    Collection<InterfaceType> getSuperinterfaces()

Returns the interface types that are direct supertypes of this type. These are the interface types implemented or extended by this type's declaration, with any type arguments substituted in.

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

Returns:
  the interface types that are direct supertypes of this type, or an empty collection if there are none

Copyright © 2004, 2017, Oracle and/or its affiliates. All rights reserved.