2016 - 2024

感恩一路有你

java项目开发实例 如何获得java泛型类中t的实例?

浏览量:1263 时间:2021-03-31 10:55:57 作者:admin

如何获得java泛型类中t的实例?

T.GetClass()或T.class是非法的,因为T是泛型变量。因为类的类型是在编译时处理的,所以在运行时不能直接从基中获取实际的t类型。还有一种替代实现:导入java.lang.reflect文件.Arrayimport导入java.lang.reflect文件.参数化类型导入java.lang.reflect文件. typepublic类泛型扩展库

在我看来,在方法中获取泛型方法的真正泛型类型是可行的,但是如果想通过方法获取泛型方法的真正泛型类型,就不应该实现。

首先,Java中的泛型也称为参数化类型。正确地记住,泛型应该是jdk5引入的特性。泛型的目的是使数据类型能够作为参数传入,以便可以动态更改变量的数据类型。

通用方法呢?泛型类型是在方法上声明的。只有在调用方法时才会传入实类型。如果在方法中得到它,可以直接调用泛型对象的getClass方法。但是如果你想通过一个方法得到一个泛型方法的真正类型,我不认为它可以实现。因为不调用方法时,不会输入实数据类型,因此根本无法获取泛型对应的实类型。

所以我将讨论如何在泛型方法中获得泛型的真实类型。

旧规则,让我们编写一个代码来解释。泛型方法的示例如下图所示:

在上图中,我声明了一个泛型方法:findfirst,用于获取数组的第一个元素。

运行结果如下:

以上是我的答案。我希望它能帮助你

java项目开发实例 java项目实例 深入理解java泛型详解

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。