博客
关于我
Java泛型详解:<T>和Class<T>的使用,泛型类
阅读量:316 次
发布时间:2019-03-03

本文共 720 字,大约阅读时间需要 2 分钟。

单独的T 代表一个类型 ,而 Class代表这个类型所对应的类, Class<?>表示类型不确定的类

E - Element (在集合中使用,因为集合中存放的是元素) T - Type(Java 类) K - Key(键) V - Value(值) N - Number(数值类型) ? -  表示不确定的java类型

例子 

Set
表示 集合里 是 T类的实例 List
表示 集合里 是 E类的实例 List
表示 集合里的对象类型不确定,未指定 List 同 List
是一样的。

 

如何创建一个Class类型的实例?

就像使用非泛型代码一样,有两种方式:调用方法 Class.forName() 或者使用类常量X.class。      Class.forName() 被定义为返 回 Class
。另一方面,类常量 X.class 被定义为具有类型 Class
,所 以 String.class 是Class
类型的。

 

方法中为什么需要 T修饰呢

泛型的声明,必须在方法的修饰符(public,static,final,abstract等)之后,返回值声明之前

public static 
T request2Bean(HttpServletRequest request,Class
clazz){}

其中第一个是与传入的参数Class相对应的,相当于返回值的一个泛型,后面的T是返回值类型,代表方法必须返回T类型的(由传入的Class决定)

 

转载地址:http://vigl.baihongyu.com/

你可能感兴趣的文章
MySQL基础系列—SQL分类之一
查看>>
MySQL处理千万级数据分页查询的优化方案
查看>>
mysql备份
查看>>
mysql备份与恢复
查看>>
mysql备份工具xtrabackup
查看>>
mysql备份恢复出错_尝试备份/恢复mysql数据库时出错
查看>>
mysql复制内容到一张新表
查看>>
mysql复制表结构和数据
查看>>
mysql复杂查询,优质题目
查看>>
MySQL外键约束
查看>>
MySQL多表关联on和where速度对比实测谁更快
查看>>
MySQL多表左右连接查询
查看>>
mysql大批量删除(修改)The total number of locks exceeds the lock table size 错误的解决办法
查看>>
mysql如何做到存在就更新不存就插入_MySQL 索引及优化实战(二)
查看>>
mysql如何删除数据表,被关联的数据表如何删除呢
查看>>
MySQL如何实现ACID ?
查看>>
mysql如何记录数据库响应时间
查看>>
MySQL子查询
查看>>
Mysql字段、索引操作
查看>>
mysql字段的细节(查询自定义的字段[意义-行列转置];UNION ALL;case-when)
查看>>