当前位置: 首页 > news >正文

获取泛型的类型

示例一:获取父类的泛型的类型

public class Emp<T, Q> {class Stu extends Emp<String, Integer> {}@Testvoid fun() {final Type type = Emp.class.getGenericSuperclass();final ParameterizedType parameterizedType = (ParameterizedType) type;System.out.println(parameterizedType.getActualTypeArguments()[0]);System.out.println(parameterizedType.getActualTypeArguments()[1]);}
}

示例二:获取成员变量的泛型类型

public class Emp<T, Q> {private static Emp<String, Integer> emp = new Emp<>();public static void main(String[] args) throws Exception {//通过反射获取student属性Field field = Emp.class.getDeclaredField("emp");//通过属性获取泛型Type genericType = field.getGenericType();System.out.println(genericType);// ParameterizedType表示的是带泛型的类型ParameterizedType pt = (ParameterizedType) genericType;// 获取具体的泛型类型,这个方法会返回一个Type的数组Type[] actualTypeArguments = pt.getActualTypeArguments();System.out.println(actualTypeArguments[0]);System.out.println(actualTypeArguments[1]);}
}

示例三:获取局部变量的泛型的类型

public class Emp<T, Q> {public static void main(String[] args) throws Exception {//注意:泛型对象必须以匿名内部类的方式定义
Emp<String, Integer> emp = new Emp<>() { //匿名内部类};final Type type = emp.getClass().getGenericSuperclass();ParameterizedType parameterizedType = (ParameterizedType) type;final Type[] types = parameterizedType.getActualTypeArguments();System.out.println(types[0]);System.out.println(types[1]);}
}
http://www.lryc.cn/news/185109.html

相关文章:

  • [Python进阶] Pyinstaller打包问题
  • 计算机竞赛 题目:基于机器视觉opencv的手势检测 手势识别 算法 - 深度学习 卷积神经网络 opencv python
  • 竞赛选题 机器学习股票大数据量化分析与预测系统 - python 竞赛选题
  • 智慧驿站:为城市带来全新智慧公厕未来形态
  • Java获取汉字首字母
  • 基于or-tools的人员排班问题建模求解(JavaAPI)
  • 设备管理团队如何做好停机维护工作_基于PreMaint设备数字化平台
  • c++ qt--线程(二)(第九部分)
  • ​企业数据泄露不断,深信服EDR助企业构建数据“安全屋”
  • 单线复用iptv影响网速吗?
  • C语言中常用的字符串处理函数(strlen、strcpy、strcat、strcmp)
  • Suricata – 入侵检测、预防和安全工具
  • vscode 乱码解决
  • SpringCloud(37):Spring Cloud Alibaba 综合集成架构演示
  • 【单片机】15-AD和DA转换
  • 基于FPGA的I2C读写EEPROM
  • Viva Employee Communications Communities部署方案
  • WPF向Avalonia迁移(三、项目结构)
  • cvpr24写作模板pdfLaTex编译器注意点小结
  • windows版php扩展包下载
  • 计算机竞赛 题目:基于深度学习的中文汉字识别 - 深度学习 卷积神经网络 机器视觉 OCR
  • Django跨域访问 nginx转发 开源浏览器
  • Docker Alist 在线网盘部署
  • Jmeter吞吐量控制器使用小结
  • 3分钟轻松实现网关网口连接罗克韦尔AB CompactLogix系列PLC
  • vscode刷leetcode使用Cookie登录
  • 每次启动Docker容器指定IP、hosts和端口
  • PL/SQL增量同步
  • C++——多态底层原理
  • asdTools-ReID热力图可视化