我正在为C++编写一个Java包装器,并且想使用泛型类来包装C++模板。因此,我想获得泛型类型作为字符串,所以我可以进一步传递给JNI并实例化一个相应的C++对象。Java:获得泛型类型
编辑:这是我如何实现它,如果有人感兴趣:
public class A<T>
{
private long ptr;
public static <E> A<E> create(Class<E> cls)
{
return new A<E>(cls);
}
private A(Class<T> cls)
{
ptr = create(cls.getName());
if(ptr == 0)
{
throw new NullPointerException();
}
}
private native long create(String className);
}
问题是......? – home
好吧,我该怎么做?我不能简单地写出T.getClass()。toString() – Pedro