博客
关于我
Java 泛型使用
阅读量:375 次
发布时间:2019-03-05

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

当我们解析 json 时, 期望通过参数传入目标类, 得到返回值对象类型就是目标类的类型, 从而省掉类型转换的操作, 这时就可以利用泛型

/** * 方法上泛型的语法:  * 在返回值前面使用尖括号, 里面是泛型, 表示某个类型 * 这里方法参数是 Class
返回值是 T, 表示传入某个类对象, 返回值可以拿到该类的实例对象 */public static
T parse(String text, Class
clazz) { try { return JSON.parseObject(text, clazz); } catch (Exception e) { log.error("json 解析出错: {}", text); log.error(e.getMessage(), e); return null; }}

其他泛型常识

  • 泛型可以声明在接口 / 类 / 方法上
  • 声明在类上后, 实例方法可以直接使用泛型无需再次声明, 不过类方法不能使用类上的泛型, 需要每次自己手动声明泛型
  • 泛型出现在编译期, 好处是减少强制类型转换和提升阅读性
  • 泛型可以限定于某个类 / 接口的父类 / 子类, 例如 <E extends DemoData> 表示继承 / 实现 DemoData 的类才能编译通过; <E super DemoData> 表示子类 / 子接口是 DemoData 的类才能编译通过
  • 泛型有通配符 <?>, 这种数据取到默认都是 Object 类型

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

你可能感兴趣的文章
MySQL中的字符集陷阱:为何避免使用UTF-8
查看>>
mysql中的数据导入与导出
查看>>
MySQL中的时间函数
查看>>
mysql中的约束
查看>>
MySQL中的表是什么?
查看>>
mysql中穿件函数时候delimiter的用法
查看>>
Mysql中索引的分类、增删改查与存储引擎对应关系
查看>>
Mysql中索引的最左前缀原则图文剖析(全)
查看>>
MySql中给视图添加注释怎么添加_默认不支持_可以这样取巧---MySql工作笔记002
查看>>
Mysql中获取所有表名以及表名带时间字符串使用BetweenAnd筛选区间范围
查看>>
Mysql中视图的使用以及常见运算符的使用示例和优先级
查看>>
Mysql中触发器的使用示例
查看>>
Mysql中设置只允许指定ip能连接访问(可视化工具的方式)
查看>>
mysql中还有窗口函数?这是什么东西?
查看>>
mysql中间件
查看>>
MYSQL中频繁的乱码问题终极解决
查看>>
MySQL为Null会导致5个问题,个个致命!
查看>>
MySQL为什么不建议使用delete删除数据?
查看>>
MySQL主从、环境搭建、主从配制
查看>>
Mysql主从不同步
查看>>