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多平台发布

相关推荐
一只爱打拳的程序猿9 分钟前
【Spring】更加简单的将对象存入Spring中并使用
java·后端·spring
杨荧11 分钟前
【JAVA毕业设计】基于Vue和SpringBoot的服装商城系统学科竞赛管理系统
java·开发语言·vue.js·spring boot·spring cloud·java-ee·kafka
minDuck13 分钟前
ruoyi-vue集成tianai-captcha验证码
java·前端·vue.js
为将者,自当识天晓地。31 分钟前
c++多线程
java·开发语言
daqinzl39 分钟前
java获取机器ip、mac
java·mac·ip
激流丶1 小时前
【Kafka 实战】如何解决Kafka Topic数量过多带来的性能问题?
java·大数据·kafka·topic
Themberfue1 小时前
Java多线程详解⑤(全程干货!!!)线程安全问题 || 锁 || synchronized
java·开发语言·线程·多线程·synchronized·
让学习成为一种生活方式1 小时前
R包下载太慢安装中止的解决策略-R语言003
java·数据库·r语言
晨曦_子画1 小时前
编程语言之战:AI 之后的 Kotlin 与 Java
android·java·开发语言·人工智能·kotlin
南宫生2 小时前
贪心算法习题其三【力扣】【算法学习day.20】
java·数据结构·学习·算法·leetcode·贪心算法