Is it possible to get the type of a generic parameter?

An example:

public final class Voodoo {

public static void chill(List> aListWithTypeSpiderMan) {

// Here I'd like to get the Class-Object 'SpiderMan'

Class typeOfTheList = ???;

}

public static void main(String... args) {

chill(new ArrayList());

}

}

解决方案

One construct, I once stumbled upon looked like

Class persistentClass = (Class)

((ParameterizedType)getClass().getGenericSuperclass())

.getActualTypeArguments()[0];

So there seems to be some reflection-magic around that I unfortunetly don't fully understand... Sorry.

java 反射获取泛型,用反射获取Java中的泛型参数的类型相关推荐

  1. java中是先学集合还是泛型_Java学习-在集合中使用泛型

    我们在编写程序时,经常遇到两个模块的功能非常相似,只是一个是处理int类型数据,另一个处理String类型数据,或者其他自定义类型数据,但是我们没有办法,只能分别写多个方法处理每种数据类型,因为方法的 ...

  2. java.net.url 中文乱码_asp.net URL中包含中文参数造成乱码的解决方法

    asp.net URL中包含中文参数造成乱码的解决方法 更新时间:2010年03月08日 21:44:27   作者: 中文乱码一直以来是WEB开发中比较常见的问题之一,对于初学者来说,各种各样的编码 ...

  3. 《Java 核心技术卷1 第10版》学习笔记 ------ 泛型【进阶】

    这部分主要是结合 Java 虚拟机实现泛型的原理进一步研究如何更好的使用泛型. 8.5 泛型代码和虚拟机 虚拟机没有泛型类型对象---所有对象都属于普通类.所以编译器在编译的时候会进行类型擦除操作. ...

  4. Java在Quant应用_GitHub - tigerfintech/tiger_quant: Java 实盘量化框架

    Tiger Quant 启动命令 TigerQuantBootstrap 是项目的Main方法入口,负责项目的启动. 停止命令 查出项目运行的进程 pid. ps -ef|grep TigerQuan ...

  5. java反射基本使用,反射泛型参数类型获取

    背景: 因为项目controller层入参Req 和service 层DTO 入参,是两个类.需要在controller层将api接收到的参数向下传递到service层,参数名基本都是一致的.但是有时 ...

  6. java反射获取泛型_如何通过Java反射获取泛型类型信息

    前言 关于Java泛型,很多人都有一个误解,认为Java代码在编译时会擦除泛型的类型,从而在运行时导致没法访问其类型,这其实并不完全正确,因为有一部分泛型信息是可以在运行时动态获取的,这部分信息基本能 ...

  7. Java反射基础(一)--Class对象获取

    Classes Java中,任何一个对象要么是一个引用类型要么是基本数据类型.引用类型指的是那些直接或间接 Java.lang.Object的类.Classse,enum,和接口都是应用类型.基本类型 ...

  8. java反射基础_Java反射基础(一)--Class对象获取

    ClassesJava中,任何一个对象要么是一个引用类型要么是基本数据类型.引用类型指的是那些直接或间接 Java.lang.Object的类.Classse,enum,和接口都是应用类型.基本类型是 ...

  9. java反射 获取方法_java反射之获取类的信息方法(推荐)

    本文接上文"老生常谈反射之class类的使用(必看篇)",以编写一个用来获取类的信息(成员函数.成员变量.构造函数)的工具类来讲解"反射之获取类的信息" 1.获 ...

  10. java获取method,2.5 反射——Class对象功能_获取Method

    >[info] 反射--Class对象功能_获取Method * Method:方法对象 * 执行方法: * Object invoke(Object obj, Object... args) ...

最新文章

  1. python+HDF5+h5py
  2. (原创)按照一定的格式生成一定数量的随机数的例子
  3. new char[x]和new char(x)的差别
  4. gitHub使用记录
  5. 文件服务器存储,文件服务器存储
  6. UICollectionView reloadData后cell被隐藏
  7. c语言程序设计实践课选题,c语言程序设计实践实验题目
  8. 【华为云技术分享】小白学YOLO:一文带你学YOLOv1 Testing
  9. python idle是什么_下载下来的IDLE是个什么鬼
  10. What's new in C# from 2.0 to 5.0
  11. jQuery中调用方法,动态拼接传字符串参数格式
  12. 论文笔记_S2D.59_2015-ICRA_V-LOAM_低漂移、鲁棒和快速的视觉-激光 里程计和建图
  13. python correlation_相关性系数介绍+python代码实现 correlation analysis
  14. JavaScript(BOM、窗口事件和计时器)
  15. 推荐一款免费开源的javascript电子表格:x-sheet
  16. window7下visio 2013 64位激活工具
  17. nmap渗透测试--版本探测
  18. 300ETF期权适合进行短线交易吗?
  19. 读入一个整数,如果是1~5之间则分别输出5个福娃的名字否则输出“北京欢迎你
  20. 数据分析_常见的业务分析指标及模型介绍

热门文章

  1. POJ2391(最大流Isap+Floyd+二分)
  2. 云计算适用于中小企业吗?
  3. IP管理提高业务网络安全性的3种方式——Vecloud
  4. Eclipse修改console输出最大行数及(IOConsole Updater)
  5. 一些对制作网站有帮助的站点
  6. C#中把货币、日期转换成中文大写
  7. Using rqt_console and roslaunch
  8. angular js $post,$get请求传值
  9. Smobiler实现扫描条码和拍照功能(开发日志八)
  10. 《第13章 猜拳游戏》