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
极客先躯4 分钟前
高级java每日一道面试题-2026年02月08日-实战篇[Docker]-如何实现容器的快照和恢复?
java·运维·docker·容器·备份·持久化·恢复
布朗克1684 分钟前
29 反射机制
java·开发语言·反射
San813_LDD6 分钟前
[数据结构]共享栈与双端队列:算法思想分析及C语言实现
java·开发语言·数据结构
我是一颗柠檬7 分钟前
【Java项目技术亮点】全链路分层限流:从网关到数据库的多层防护体系
java·开发语言·数据库
wuminyu17 分钟前
Java锁膨胀机制之偏向锁到轻量级锁源码剖析
java·linux·c语言·jvm·c++
码不停蹄的玄黓23 分钟前
SpringBoot 实现拦截器
java·spring boot·后端
狗凯之家源码网27 分钟前
永夜大圣 H5 棋牌大厅源码效果实测与品质解析
java·开发语言
凡人叶枫27 分钟前
Effective C++ 条款13:以对象管理资源(RAII)
java·linux·开发语言·c++·嵌入式开发
小马爱打代码28 分钟前
Java开发:Spring Cloud Alibaba微服务之消息队列(RocketMQ、Kafka、RabbitMQ)
java·java-rocketmq·java-rabbitmq