我已经看到类似以下的代码,它们将模板类型定义为其他一些类:

MyAndroidClass<MyAnotherAndroidClass> myAndroidClassInstanceVar;


现在,我可以通过MyAndroidClass.class.getSimpleName()方法获取MyAndroidClass的类名称。

但是,现在我想获得在此类的模板类型中定义的“ MyAnotherAndroidClass”的类名。我怎样才能做到这一点 ?

最佳答案

由于类型擦除,您将不一定能做到。但是,您可以接受通用类型的参数,然后通过Class来获取getClass

例如(null将为NPE):

class Test<E>{
    Class getclazz(E e){
        return e.getClass();
    }
}

09-25 16:30