2009-10-08 57 views

回答

7

但它可能找出使用反射API。看看Field.getGenericType()

Type type = field.getGenericType(); 
if (type instanceof ParameterizedType) { 
    Type[] genericArguments = ((ParameterizedType) type).getActualTypeArguments(); 
} 
+0

你說得對,但那很奇怪:我以爲信息在運行時丟失了。這篇關於反射泛型的文章過時了嗎? http://www.artima.com/weblogs/viewpost.jsp?thread=208860 – 2009-10-08 21:09:11

+0

該文章有一些與我上面發佈的代碼類似的例子。某些泛型信息在運行時會丟失;靜態聲明的字段/方法聲明不是。查看Java Generics常見問題的模式詳細信息:http://www.angelikalanger.com/GenericsFAQ/JavaGenericsFAQ.html – ChssPly76 2009-10-08 21:20:14

+0

謝謝!顯而易見的區別是直接看字段與查看通用接口或超類。出於某種原因,我從來沒有想過只是看看這個領域。 – 2009-10-08 21:37:44

相關問題