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

相关推荐
程序员岳焱1 分钟前
Java 程序员成长记(三):菜鸟入职之@Transactional「罢工」
java·后端·编程语言
Rocky4019 分钟前
JAVAEE->多线程:锁策略
java·开发语言·jvm
白宇横流学长10 分钟前
基于J2EE架构的在线考试系统设计与实现【源码+文档】
java·架构·java-ee
猫咪老师199514 分钟前
多系统一键打包docker compose下所有镜像并且使用
java·docker·容器
jay神24 分钟前
基于Springboot的宠物领养系统
java·spring boot·后端·宠物·软件设计与开发
Java初学者小白26 分钟前
秋招Day12 - 计算机网络 - IP
java
JSUITDLWXL35 分钟前
ideal2022.3.1版本编译项目报java: OutOfMemoryError: insufficient memory
java·开发语言
magic 24539 分钟前
Java建造者模式(Builder Pattern)详解与实践
java·开发语言·建造者模式
不知几秋1 小时前
Spring Boot
java·前端·spring boot
程序员岳焱2 小时前
深度剖析:Spring AI 与 LangChain4j,谁才是 Java 程序员的 AI 开发利器?
java·人工智能·后端