Module java.base

Interface ParameterizedType

所有超级接口:
Type

public interface ParameterizedType extends Type
ParameterizedType表示参数化类型,例如Collection<String>

参数化类型是在反射方法首次需要时创建的,如本包中所述。创建参数化类型p时,将解析p实例化的泛型类或接口声明,并递归创建p的所有类型参数。有关类型变量创建过程的详细信息,请参见TypeVariable。重复创建参数化类型不会产生任何效果。

实现此接口的类的实例必须实现一个equals()方法,该方法将使任何共享相同泛型类或接口声明并具有相等类型参数的两个实例相等。

参见Java语言规范:
4.5 参数化类型
自Java版本:
1.5
  • Method Summary

    Modifier and Type
    Method
    Description
    Type[]
    返回表示此类型实际类型参数的Type对象数组。
    返回表示此类型是其成员的类型的Type对象。
    返回表示声明此类型的类或接口的Type对象。

    Methods declared in interface java.lang.reflect.Type

    getTypeName
  • Method Details

    • getActualTypeArguments

      Type[] getActualTypeArguments()
      返回表示此类型实际类型参数的Type对象数组。

      请注意,在某些情况下,返回的数组可能为空。如果此类型表示嵌套在参数化类型中的非参数化类型,则可能会发生这种情况。

      返回:
      表示此类型实际类型参数的Type对象数组
      抛出:
      TypeNotPresentException - 如果任何实际类型参数引用不存在的类或接口声明
      MalformedParameterizedTypeException - 如果任何实际类型参数引用由于任何原因无法实例化的参数化类型
      自Java版本:
      1.5
    • getRawType

      Type getRawType()
      返回表示声明此类型的类或接口的Type对象。
      返回:
      表示声明此类型的类或接口的Type对象
      自Java版本:
      1.5
    • getOwnerType

      Type getOwnerType()
      返回表示此类型是其成员的类型的Type对象。例如,如果此类型是O<T>.I<S>,则返回O<T>的表示。

      如果此类型是顶层类型,则返回null

      返回:
      表示此类型是其成员的类型的Type对象。如果此类型是顶层类型,则返回null
      抛出:
      TypeNotPresentException - 如果所有者类型引用不存在的类或接口声明
      MalformedParameterizedTypeException - 如果所有者类型引用由于任何原因无法实例化的参数化类型
      自Java版本:
      1.5