Home » openjdk-7 » javax.lang » model » type » [javadoc | source]
public interface: DeclaredType [javadoc | source]

All Implemented Interfaces:

All Known Implementing Classes:

Represents a declared type, either a class type or an interface type. This includes parameterized types such as {@code java.util.Set} as well as raw types.

While a {@code TypeElement} represents a class or interface element, a {@code 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 {@code } is an intersection type. It is represented by a {@code DeclaredType} with {@code Number} as its superclass and {@code Runnable} as its lone superinterface.

Method from javax.lang.model.type.DeclaredType Summary:
asElement,   getEnclosingType,   getTypeArguments
Method from javax.lang.model.type.DeclaredType Detail:
 public Element asElement()
    Returns the element corresponding to this type.
 public TypeMirror getEnclosingType()
    Returns the type of the innermost enclosing instance or a {@code NoType} of kind {@code NONE} if there is no enclosing instance. Only types corresponding to inner classes have an enclosing instance.
 public List<TypeMirror> getTypeArguments()
    Returns the actual type arguments of this type. For a type nested within a parameterized type (such as {@code Outer.Inner}), only the type arguments of the innermost type are included.