我有一个这样的列表:
private List myList = new ArrayList();
我想得到T.的.class怎么能这样做?
我的意思是:
myList.getClass()
编辑:
我试过了:
Field genericField = Wrapper.class.getDeclaredField("myList");
ParameterizedType genericType = (ParameterizedType) genericField.getGenericType();
Class> genericClass = (Class>) genericType.getActualTypeArguments()[0];
当我调试它
genericType
具有以下值:
java.util.List
所以我认为这肯定是与这个问题不同的问题:Get generic type of java.util.List因为如果你用T声明一个类并且稍后在另一个方法中将某个东西分配给T,那么T所持有的类就会消失.