java基础之泛型

泛型

泛型是在JDK1.5增加的功能,在没有泛型之前,从集合中取出来的每一个对象都必须进行强制类型转换,如果有人插入了错误类型的对象,在运行时的转换就会出现问题,有了泛型之后,这些问题就会在编译期暴露出来。

泛型的好处

  • 在编译期间检测类型,避免了运行期出现的ClassCastException
  • 使得代码整洁,不需要在转换时使用instanceOf
  • 在运行时不会产生类型检查的字节码指令
  • 增加了可读性和安全性

通常使用E表示集合的元素类型,K和V分别表示表的关键字和值的类型,T表示任意类型

类型变量的限定

可以对泛型的类型变量进行上下限的限定,使用extends来进行上限的限定,使用super来进行下限的限定

复制代码
// 将参数限定为只能被实现了Comparable接口的类的数组调用
public static <T extends Comparable> T min(T[] array)

https://zhhll.icu/2020/java基础/面向对象/14.java基础之泛型/

本文由mdnice多平台发布

相关推荐
假女吖☌7 分钟前
限流算法-redis实现与java实现
java·redis·算法
lixin55655616 分钟前
基于迁移学习的图像风格增强器
java·人工智能·pytorch·python·深度学习·语言模型
面汤放盐20 分钟前
企业权限--系统性方案探究
java·开发语言
what丶k23 分钟前
深度解析Redis LRU与LFU算法:区别、实现与选型
java·redis·后端·缓存
悟能不能悟27 分钟前
java Date转换为string
java·开发语言
菜宾34 分钟前
java-redis面试题
java·开发语言·redis
猿小羽41 分钟前
AI 学习与实战系列:Spring AI + MCP 深度实战——构建标准化、可扩展的智能 Agent 系统
java·spring boot·llm·agent·spring ai·mcp·model context protocol
木井巳1 小时前
【递归算法】快速幂解决 pow(x,n)
java·算法·leetcode·深度优先
风景的人生1 小时前
mybatis映射时候的注意点
java·mybatis
墨夶1 小时前
Java冷热钱包:不是所有钱包都叫“双保险“!用户资产安全的终极守护者
java·安全·区块链