`

java泛型 参数化类型

 
阅读更多
private Map<String, Number> collection;
     
    public static void main(String[] args) throws  Exception{
            Class<?> clazz = TestgetGenericType.class; //取得 Class
            Field field = clazz.getDeclaredField("collection"); //取得字段变量
            Type type = field.getGenericType(); //取得泛型的类型
            ParameterizedType ptype = (ParameterizedType)type; //转成参数化类型
            System.out.println(ptype.getActualTypeArguments()[0]); //取出第一个参数的实际类型
            System.out.println(ptype.getActualTypeArguments()[1]); //取出第二个参数的实际类型
    }
 
}

 

分享到:
评论

相关推荐

    java 泛型类的类型识别示例

    综上所述,虽然Java泛型在编译后会进行类型擦除,但通过上述技巧,我们仍然能够在运行时获得关于泛型类实例化类型的一些信息。在实际开发中,这些方法可以帮助我们编写更加灵活和安全的代码。在示例文件`GenericRTTI...

    Java泛型的用法及T.class的获取过程解析

    Java泛型是Java编程语言中的一种重要特性,它允许开发者在编写代码时指定类型参数,从而提高代码的灵活性和可读性。本文将详细介绍Java泛型的用法 及T.class的获取过程解析。 一、泛型的基本概念 泛型是Java 5中...

    java泛型技术之发展

    - **不能实例化类型参数**:如 `new T()` 是不允许的。 - **原始类型与泛型**:原始类型(如int、double)不能直接用作类型参数,但可以使用装箱类型(Integer、Double)。 总之,Java泛型是现代Java开发中不可或...

    java 泛型方法使用示例

    下面我们将深入探讨Java泛型方法的概念、语法以及使用示例。 **一、泛型方法概念** 泛型方法是一种具有类型参数的方法,这些类型参数可以在方法声明时指定,并在方法体内部使用。与类的泛型类似,它们提供了编译时...

    java泛型学习ppt

    Java 泛型是 Java 语言的类型系统的一种扩展,以支持创建可以按类型进行参数化的类。泛型的主要目标是提高 Java 程序的类型安全。通过知道使用泛型定义的变量的类型限制,编译器可以在一个高得多的程度上验证类型...

    Java泛型类型擦除后的补偿

    在Java编程语言中,泛型是一种强大的特性,它允许我们在定义类、接口和方法时引入类型参数,从而实现参数化类型。然而,Java的泛型并非像C++或C#那样在运行时存在,而是在编译期间经历一个称为“类型擦除”的过程。...

    java泛型的内部原理及更深应用

    Java泛型是Java编程语言中的一个强大特性,它允许在定义类、接口和方法时使用类型参数,从而实现参数化类型。这使得代码更加安全、可读性更强,并且能够减少类型转换的必要。在“java泛型的内部原理及更深应用”这个...

    SUN公司Java泛型编程文档

    1. **类型参数化**:泛型类、泛型接口和泛型方法允许使用类型参数来代替具体的类型。例如,`public class Container&lt;T&gt;`,这里的`T`就是一个类型参数,代表了某种未知的具体类型。 2. **通配符**:在使用泛型时,...

    关于java基础的泛型的练习

    - 泛型是一种参数化类型,允许在定义类、接口和方法时使用类型参数,从而创建一种可以适用于多种类型的通用代码。 - 泛型的主要目标是提供类型安全,避免在运行时出现ClassCastException。 2. 泛型的声明与使用:...

    java泛型深入.pdf

    Java泛型是Java语言中用于处理类型安全的一种机制,它允许在编译期间提供类型检查,并在运行时消除了类型转换。Java泛型深入的内容涵盖泛型的基本概念、泛型类、接口、方法以及泛型的使用限制和高级特性。 首先,...

    面试必须资料java泛型攻略、

    Java泛型还支持类型参数的边界限制,即可以指定类型参数必须继承自某个类或者实现某个接口。例如: ```java public class C1&lt;T extends Number&gt; {} // T 必须是Number的子类 public class C2...

    JVM如何理解Java泛型类.doc

    在Java中,泛型是一种在编译时确保类型安全的方法,它允许我们创建具有参数化类型的类或方法。通过使用泛型,开发者可以在不同的上下文中重用相同的代码逻辑,同时保持类型安全。例如,以下是一个简单的泛型类`Pair`...

    Java泛型技术之发展.pdf

    - **不能实例化类型参数**:如`new T()`是不允许的,因为编译器不知道T具体是什么类型。 - **不能使用原始类型**:如`List&lt;int&gt;`是非法的,必须使用`List&lt;Integer&gt;`。 - **类型擦除限制**:由于类型擦除,泛型...

Global site tag (gtag.js) - Google Analytics