public class SomeOne< T1, T2, T3...>{
public void getClass(){
Type genType = getClass().getGenericSuperclass();
Type[] params = ((ParameterizedType) genType).getActualTypeArguments();
Class<T1> t1Class = (Class) params[0];
Class<T2> t2Class = (Class) params[1];
......
}
}
有了class,可以通过反射instance对象了
Constructor constructor = t1Class.getDeclaredConstructor(new Class[]{Param1.class, Param2.class...});
T1 ti = (T1) constructor.newInstance(new Object[]{param1, param2...});
本文介绍如何通过Java泛型获取类型参数,并利用反射机制实例化特定类型的对象。示例代码展示了如何从泛型类中获取实际类型参数并创建对应实例。


被折叠的 条评论
为什么被折叠?



