父类如何获取子类传递的泛型
来源:互联网 发布:派派辅助软件 编辑:程序博客网 时间:2024/05/09 04:19
package com.reflect.other;import java.io.Serializable;/** * 简单pojo类(测试用,无具体意义) * * @author edgewalk * @date 2017年6月5日 */public class Person implements Serializable { private static final long serialVersionUID = 1L; private Integer id; private String name; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; }}
package com.reflect.other;import java.lang.reflect.ParameterizedType;import java.lang.reflect.Type;/** * 父类 * * @author edgewalk * @date 2017年6月5日 * @param <T>泛型,可以由之类继承传递 */public class Parent<T> { /** * 用于接收传递的clazz */ private Class clazz; // 获取子类传递给他的具体泛型类型 public Parent() { // 1获取子类的class(在创建子类对象的时候,会返回父类的构造方法) Class<? extends Parent> clazz = this.getClass(); // Student // 2获取当前类的带有泛型的父类类型 ParameterizedType type = (ParameterizedType) clazz.getGenericSuperclass(); // 3返回实际参数类型(泛型可以写多个) Type[] types = type.getActualTypeArguments(); // 4 获取第一个参数(泛型的具体类) Person.class clazz = (Class) types[0]; }}
package com.reflect.other;/** * 子类 * @author edgewalk * @date 2017年6月5日 */public class Student extends Parent<Person> { /** * 当我们创建本类对象的时候,会先创建一个student类的空参构造, * 然后会返回父类的空参构造(Parent),此时父类就会获取到子类传递给他的泛型,在父类中执行相关操作 */}
阅读全文
0 0
- 父类如何获取子类传递的泛型
- Python中子类如何获取父类的类成员
- 泛型子类获取父类的模板类型方法
- Java父类取得子类传递的泛型参数Class类型
- 如何在子类中向父类的构造函数传递参数
- 获取子类穿过来的泛型
- iOS下如何获取一个类的所有子类
- DAO中,如何获取子类带泛型的父类的参数
- QGraphicsItem子类对象间消息的传递与获取
- 获取类的所有子类
- C++中子类与父类之间的值传递即指针传递
- 子类代替父类进行参数传递
- 从泛型类中获取子类的泛型参数的类型
- 父类获取子类的class的类型
- java反射机制之获取子类的具体泛型
- C# 获取 父类和子类的集合
- C++中子类获取父类的方法,模板实现
- 自定义ListView分别获取子类和父类的权限
- 线程的生命周期
- JQuery UI 1.8.20文件介绍
- 使用jquery对片段的样式进行添加修改
- mysql互换表中两列数据方法
- Vue项目webpack打包部署到服务器
- 父类如何获取子类传递的泛型
- 《Andriod五种布局模式》
- 多线程程序谨慎给 DB 加锁
- linux (中标麒麟) 安装Qt
- MySQL 记录被删除之后 AUTO_INCREMENT 值被复用问题分析
- 收到发生
- HTTP Message Length
- 算法作业_25(2017.6.1第十五周)
- SDN资源链接汇总