ParameterizedType获取java泛型参数类型

原创 2013年12月05日 18:47:24
getClass().getGenericSuperclass()返回表示此 Class 所表示的实体(类、接口、基本类型或 void)的直接超类的 Type



然后将其转换ParameterizedType。。



getActualTypeArguments()返回表示此类型实际类型参数的 Type 对象的数组。

[0]就是这个数组中第一个了。。



简而言之就是获得超类的泛型参数的实际类型。。



比如

超类

public class GenericDAO {

private Class entityClass;

protected GenericDAO() {

  Type type = getClass().getGenericSuperclass();

  Type trueType = ((ParameterizedType) type).getActualTypeArguments()[0];

  this.entityClass = (Class) trueType;

 }

}

子类

public class OptionManager extends GenericDAO {



}

测试类

public class OracleTest {

public static void main(String[] args) throws Exception {

OptionManager manager = new OptionManager();

}

}

这样在你new OptionManager();以后

超类里的entityClass就是子类那里的public class OptionManager extends GenericDAO 里面的MSGC_OPTION所对应的class对象了..
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

ParameterizedType获取java泛型参数类型

前言这两天在看以前写的ssh项目时,遇到一个问题就是封装的BaseDaoImpl抽象类,构造方法里面是这样写的 Class clazz; public BaseDaoImpl(){ ...

java反射机制获取泛型参数类型

package com.dasenlin.reflectionconstractor;import java.lang.reflect.Method; import java.lang.reflect...

java——用泛型参数类型构造数组

前一阵子打代码的时候突然想到一个问题。平时我们的数组都是作为一个参数传入方法中的,如果我们要想在方法中创建一个数组怎么样呢?在类型明确的情况下,这是没什么难度的。如果我们传入的参数是泛型类型的参数呢?...

你不知道的泛型--获取具体的泛型参数类型

为什么擦除的泛型又可以获取具体的泛型参数信息, 在怎样的情况下可以获取? 这在哪些框架中使用到了?

黑马程序员-通过反射获取泛型参数类型

----------- android培训、java培训、java学习型技术博客、期待与您交流! ------------ package com.itcast.test2; import jav...

如何获取java中泛型参数的实际类型--反射获取

package cn.itcast.oa.base.impl; import java.lang.reflect.ParameterizedType; import java.lang.reflec...

Java 运行时如何获取泛型参数的类型

在 Java 中对于下面最简单的泛型类 class A { public void foo() { //如何在此处获得运行时 T 的具体类型呢? } } 设想我们使用时 ne...
  • hj7jay
  • hj7jay
  • 2017-02-06 09:24
  • 2463

Java获取泛型参数的类型的方法

最近在使用Google的Gson包进行Json和Java对象之间的转化,对于包含泛型的类的序列化和反序列化Gson也提供了很好的支持,感觉有点意思,就花时间研究了一下。 由于Java泛型的实现机制,...

java获取泛型参数的类型的方法 - 实例讲解

在Java中,我们常常 需要获取泛型参数的类型,比如将使用了泛型的Java代码进行序列化和反序列化的时候。 一、在开始试图去获取泛型参数的类型前,可以试着去执行如下的类,看看执行的结果: /** ...

Java反射---getGenericSuperclass和ParameterizedType参数化类型的获取

在项目中遇到了:父类 Class 父类 () 的泛型 T 类型,面对在不同子类具体的实现上,如何实现在父类方法中对类型T 的动态调用。 具体事例如下:(伪代码) public class Paren...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)