abstract class TestGeneric1 <T extends java.util.List> {
public String getClassName() {
Class clazz = (Class) ((java.lang.reflect.ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[0];
return clazz.getName();
}
public static void main(String[] args) {
class TestX extends TestGeneric1 <java.util.ArrayList>{
};
TestX test = new TestX();
System.out.println(test.getClassName()); //output java.util.ArrayList
}
}
abstract class TestGeneric2<T> {
public String getClassName() {
String genericSuperclass = queryGenericSuperclass(getClass()).getGenericSuperclass().toString();
return genericSuperclass.substring(TestGeneric2.class.getName().length() + 1, genericSuperclass.length() - 1);
}
private Class queryGenericSuperclass(Class clazz) {
if (clazz.getGenericSuperclass().toString().startsWith(TestGeneric2.class.getName())) {
return clazz;
} else {
return queryGenericSuperclass(clazz.getSuperclass());
}
}
public static void main(String[] args) throws Exception {
class TestX extends TestGeneric2<String> {
}
TestGeneric2 test = new TestX();
System.out.println(test.getClassName()); //output java.lang.String;
}
}
分享到:
相关推荐
kotlin-reflect.jar
Could not download kotlin-reflect.jar 这个问题 是墙的原因 没有下载下来kotlin-reflect.jar的jar包资源。 把下载的kotlin-reflect-1.3.70.jar,放在版本文件的子目录中,重新启动电脑就可以。网上都有对应的操作...
反编译工具 Reflect 翻看DLL
reflect doc
JBL Reflect Flow用户配置手册.pdf
JBL Reflect Flow用户快速说明书.pdf
FEST-Reflect provides an intuitive, compact and type-safe fluent API that makes Java reflection tremendously easy to use: no more casting, checked exceptions, PriviledgedActions or calls to ...
Macrium Reflect Reflect 是一款让你可以在你的磁盘上创建你的硬盘或者分区的一个精确且可靠的映像的简单易用的软件包。使用该映像你可以在部分或者整个系统丢失的情况下恢复你的整 个磁盘,分区或者个别文件和...
Kotlin-Reflect-Tools-For-JVM Related Project: Kotlin-Reflect-Tools-For-Android OverView This is a tool library for Kotlin to use java reflect APIs in Kotlin simply method.It can modify or read the top...
赠送jar包:scala-reflect-2.11.8.jar; 赠送原API文档:scala-reflect-2.11.8-javadoc.jar; 赠送源代码:scala-reflect-2.11.8-sources.jar; 赠送Maven依赖信息文件:scala-reflect-2.11.8.pom; 包含翻译后的API...
xbean-reflect-3.4.jar
Reflect
JBL Reflect Mini NC用户快速说明书.pdf
java反射(reflect)
kotlin-reflect-1.3.20.jar
免费共享,很详细的介绍了反射机制的原理,适合追根究底的java学习者
.net Reflect软件及破解文件,绝对能用!
Boost Reflect是一款基于C++实现的开源反射库,类似java反射。 不过年代稍远,最近的更新也是8年前了。 git地址:https://github.com/bytemaster/boost_reflect
scala-reflect.jar
前端项目-reflect-metadata,Polyfill for Metadata Reflection API