我已经看到类似以下的代码,它们将模板类型定义为其他一些类:
MyAndroidClass<MyAnotherAndroidClass> myAndroidClassInstanceVar;
现在,我可以通过MyAndroidClass.class.getSimpleName()方法获取MyAndroidClass的类名称。
但是,现在我想获得在此类的模板类型中定义的“ MyAnotherAndroidClass”的类名。我怎样才能做到这一点 ?
最佳答案
由于类型擦除,您将不一定能做到。但是,您可以接受通用类型的参数,然后通过Class
来获取getClass
。
例如(null将为NPE):
class Test<E>{
Class getclazz(E e){
return e.getClass();
}
}