首页 > 编程知识 正文

java泛型原理,java定义泛型方法

时间:2023-05-03 09:44:45 阅读:11253 作者:3128

虽然这里不太说明通用是什么意思,但是在Java中通用类的定义也很简单。 例如,公共类测试{ }。 这将定义通用类Test。 实例化此类时,必须指定通用类t的具体类型。 例如,Test t=new Test (; 指示通用t的类型为Object。

但是,Java的通用方法很复杂。

泛型类是在实例化类时表示泛型类型的具体类型。泛型方法是在调用方法时表示泛型类型的具体类型。

以下定义了通用方法的语法格式。

调用通用方法的语法格式如下:

说明一下,在定义通用方法时,必须在返回值之前添加,声明这是通用方法,拥有通用t,然后使用通用t作为方法的返回值。

Class的作用是展示泛型类型的具体类型,Class类型的变量c可以用于创建泛型类型类的对象。

为什么要用变量c创建对象? 既然是通用方法,因为不知道具体类型是什么,也不知道如何构建对象,所以不能使用变量c的newInstance方法创建对象,也就是使用反射创建对象

一般方法所需的参数是Class类型,Class.forName ()方法的返回值也是Class,因此可以使用Class.forName ()作为参数。 其中forName ) )方法的参数是什么类型,返回的Class是什么类型? 在本例中,forName ) )方法传递User类的完整路径,因此返回Class类型的对象。 因此,调用通用方法时,变量c的类型为Class,因此通用方法的通用t表示为User,变量obj的类型为User。

当然,通用方法并不只有一个参数Class,如果需要,可以添加其他参数。

为什么要使用通用的方法呢? 因为泛型类在实例化时指定类型,所以如果要更改为其他类型,则必须再次new,这可能是不灵活的。泛型方法可以在调用时指定类型,使其更灵活。

附件: Java通用方法演示代码。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。