Java中與泛型相關的接口 之 綜述

Java中與泛型相關的接口主要在java.lang.reflect包中。下面對java.lang.reflect包中接口和類的繼承結構介紹。

java.lang.reflect包中接口的繼承結構如下:

  • java.lang.reflect.AnnotatedElement
    • java.lang.reflect.AnnotatedType
      • java.lang.reflect.AnnotatedArrayType
      • java.lang.reflect.AnnotatedParameterizedType
      • java.lang.reflect.AnnotatedTypeVariable
      • java.lang.reflect.AnnotatedWildcardType
    • java.lang.reflect.GenericDeclaration
    • java.lang.reflect.TypeVariable<D> (also extends java.lang.reflect.Type)
  • java.lang.reflect.InvocationHandler
  • java.lang.reflect.Member
  • java.lang.reflect.Type
    • java.lang.reflect.GenericArrayType
    • java.lang.reflect.ParameterizedType
    • java.lang.reflect.TypeVariable<D> (also extends java.lang.reflect.AnnotatedElement)
    • java.lang.reflect.WildcardType

java.lang.reflect包中類的繼承結構如下:

  • java.lang.reflect.AccessibleObject (implements java.lang.reflect.AnnotatedElement)
    • java.lang.reflect.Executable (implements java.lang.reflect.GenericDeclaration, java.lang.reflect.Member)
      • java.lang.reflect.Constructor<T>
      • java.lang.reflect.Method
    • java.lang.reflect.Field (implements java.lang.reflect.Member)
  • java.lang.reflect.Array
  • java.lang.reflect.Modifier
  • java.lang.reflect.Parameter (implements java.lang.reflect.AnnotatedElement)
  • java.security.Permission (implements java.security.Guard, java.io.Serializable)
    • java.security.BasicPermission (implements java.io.Serializable)
      • java.lang.reflect.ReflectPermission
  • java.lang.reflect.Proxy (implements java.io.Serializable)

java.lang.reflect包下的繼承與實現(xiàn)關系圖

java.lang.reflect包下的繼承與實現(xiàn)關系圖

說明

在接口方面,AnnotatedType下的幾個子接口是與注解相關的,在分析泛型時可以先不做考慮。

java.lang.reflect包中并無與泛型相關的類,所有類在分析泛型時都可以不做考慮。

所以在分析泛型時要了解的接口如下:

  1. type
  2. GenericDeclaration
  3. TypeVariable<D extends GenericDeclaration>
  4. ParameterizedType
  5. GenericArrayType
  6. WildcardType
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容