美文网首页java基础
java 反射泛型 参数解析

java 反射泛型 参数解析

作者: 天空在微笑 | 来源:发表于2017-09-23 11:23 被阅读22次
public class Person<T> {    
    
}    
    
import java.lang.reflect.ParameterizedType;    
import java.lang.reflect.Type;    
    
public class Student extends Person<Student> {    
public static void main(String[] args) {    
Student st=new Student();    
Class clazz=st.getClass();    
//getSuperclass()获得该类的父类    
System.out.println(clazz.getSuperclass());    
//getGenericSuperclass()获得带有泛型的父类    
//Type是 Java 编程语言中所有类型的公共高级接口。它们包括原始类型、参数化类型、数组类型、类型变量和基本类型。    
Type type=clazz.getGenericSuperclass();    
System.out.println(type);    
//ParameterizedType参数化类型,即泛型    
ParameterizedType p=(ParameterizedType)type;    
//getActualTypeArguments获取参数化类型的数组,泛型可能有多个    
Class c=(Class) p.getActualTypeArguments()[0];    
System.out.println(c);    
}    
}    

打印结果:

class com.test.Person
com.test.Person<com.test.Student>
class com.test.Student

相关文章

  • java 反射泛型 参数解析

    打印结果: class com.test.Personcom.test.Person

  • Java泛型教程

    Java泛型教程导航 Java 泛型概述 Java泛型环境设置 Java泛型通用类 Java泛型类型参数命名约定 ...

  • java泛型中类型擦除的一些思考

    java泛型 java泛型介绍 java泛型的参数只可以代表类,不能代表个别对象。由于java泛型的类型参数之实际...

  • 关于反射的使用

    反射中获取泛型参数信息

  • java泛型

    java泛型 Java 泛型的参数只可以代表类,不能代表个别对象。 由于 Java 泛型的类型参数之实际类型在编译...

  • JAVA 核心笔记 || [xxx] 泛型

    泛型 JAVA 的参数化类型 称为 泛型 泛型类的设计 Learn12.java 运行

  • Java中的泛型/范型

    维基百科中关于Java泛型的描述 Java 泛型的参数只可以代表类,不能代表个别对象。由于Java泛型的类型参数之...

  • 泛型学习

    1.泛型是Java中参数化类型的方式。将类型也作为一种参数进行传递。2.它有泛型的方法,泛型参数,泛型类。3.泛型...

  • 泛型(一)

    1. Java中的泛型是什么 ? 使用泛型的好处是什么? 泛型是Java SE 1.5的新特性,泛型的本质是参数化...

  • 赢在面试之Java泛型篇

    1、Java中的泛型是什么 ? 使用泛型的好处是什么? 泛型是Java SE 1.5的新特性,泛型的本质是参数化类...

网友评论

    本文标题:java 反射泛型 参数解析

    本文链接:https://www.haomeiwen.com/subject/xwccextx.html