Java获取泛型的Class对象
2016-02-18 11:12
666 查看
工作中瞄到的,在此收集了
[java] view plain copy
public class RawDao<T> {
protected Class<T> clazz;
@SuppressWarnings("unchecked")
public RawDao() {
@SuppressWarnings("rawtypes")
Class clazz = getClass();
while (clazz != Object.class) {
Type t = clazz.getGenericSuperclass();
if (t instanceof ParameterizedType) {
Type[] args = ((ParameterizedType) t).getActualTypeArguments();
if (args[0] instanceof Class) {
this.clazz = (Class<T>) args[0];
break;
}
}
clazz = clazz.getSuperclass();
}
}
[java] view plain copy
public class RawDao<T> {
protected Class<T> clazz;
@SuppressWarnings("unchecked")
public RawDao() {
@SuppressWarnings("rawtypes")
Class clazz = getClass();
while (clazz != Object.class) {
Type t = clazz.getGenericSuperclass();
if (t instanceof ParameterizedType) {
Type[] args = ((ParameterizedType) t).getActualTypeArguments();
if (args[0] instanceof Class) {
this.clazz = (Class<T>) args[0];
break;
}
}
clazz = clazz.getSuperclass();
}
}
相关文章推荐
- java 多态,接口,抽象类的认识
- Java创建线程的两个方法
- 【转】Java删除文件夹和文件
- JAVA修饰符的详细介绍(public protect,default, private,final,abstract)
- JAVA内存区域与内存溢出异常
- java后台框架 springmvc mybaits 集代码生成器 SSM SSH
- Java线程(二):线程同步synchronized和volatile
- Spring boot快速入门
- Java map用法
- 详解Eclipse转Android Studio
- JAVA List 并集, 交集, 差集
- [Java] Java API文档下载方法
- java List深度克隆
- Eclipse常用快捷键与代码模板
- Struts标签<s:if>比较字符窜
- Java线程(一):线程安全与不安全
- java集合相关源码分析
- java读写properties配置文件
- Java Version Mismatch 解决方法
- eclipse调优