泛型

简介: 泛型用于解决数据类型不确定的问题,提升程序通用性与安全性。使用时需注意:只能用引用类型,支持类型擦除,默认为Object。可用于类、方法、接口,常见形式如`ArrayList<E>`,通过`<T>`声明类型参数,实现灵活复用与编译期检查,避免运行时错误。(238字)

泛型

注意点:

  • 泛型中不能写基本数据类型(要写引用数据类型比如:String)
  • 指定泛型的具体类型后,传递数据时,可以传入该类类型或者其子类类型
  • 如果不写泛型,类型默认是Object

【笔者批:泛型是在编辑视设卡,转成class文件时会消失(泛型的擦除),在jdk5中出现泛型,因为以前的屎山代码太多不好改】

泛型类

使用场景:当一个类中,某个变量的数据类型不确定时,就可以定义带有泛型的类

/*格式:
修饰符class类名<类型>{}
*/
//举例:
public class ArrayList<E>{
   
    //创建该类对象时,E就确定类型
}

此处E可以理解为变量,但是不是用来记录数据的,而是记录数据的类型,可以写成别的字母,一般T、E、K、V等比较多(因为type,element,key,value)

假设有两个人,一个大佬写泛型类,一个新手引用大佬写的泛型类

大佬在写泛型类时<>里写字母如E表示不确定的类型,新手在引用泛型类时需要在<>里写上引用数据类型,如String等

泛型方法

方法中形参类型不确定时(一般是指在一个类中,只有一个方法需要不确定的类)

  • 方案一:使用类名后面定义的泛型 -->所有方法都能用
  • 方案二:在方法申明上定义自己的泛型 -->只有本方法能用

格式:在修饰符后面加上<>即可,

修饰符 <类型> 返回值类型 方法名(类型 变量名){ }

如:public < T > void show ( T t ){

} //T表示不确定的类型,t表示一个变量,类似于String str

泛型接口

在集合中要添加的数据类型是不确定的

格式:在接口名后加上<>即可,

修饰符 interface 接口名<类型>{ }

举例:public interface List< E > { }

重点:如何使用一个带泛型的接口
  • 方式1:实现类给出具体的类型
  • 方式2:实现类延续泛型,创建对象时再确定

例如:

//方式1:实现类给出具体的类型
public class MyArrayList implements List<String>{
   
    //大括号里再重写所有的方法
}
//方式2:实现类延续泛型,创建对象时再确定
public class MyArrayList<E> implements List<E>{
   
    //大括号里再重写所有的方法
}
相关文章
|
4天前
|
存储
原码,反码,补码
原码是二进制的直观表示,符号位决定正负;反码用于解决负数计算问题,负数按位取反;补码在反码基础上加1,解决跨0误差。计算机中所有数据存储与运算均采用补码形式,可准确处理正负数运算,并能多表示一个特殊值-128。
64 5
|
4天前
|
Java Go 开发者
IDEA开发常用的快捷键
IntelliJ IDEA常用快捷键汇总:涵盖代码生成(如main、sout)、编辑(复制、删除、重命名)、导航(跳转、查找)、格式化、代码阅读及版本控制等高频操作,提升开发效率。熟练掌握可显著优化编码体验,是Java开发者必备技能。
64 1
|
4天前
经典题:求一个数是否为质数
介绍质数判断与自幂数概念:质数为仅被1和自身整除的大于1的自然数;自幂数是n位数等于各位数字n次幂之和,如水仙花数(三位)、四叶玫瑰数(四位)等,体现数字的独特数学之美。(239字)
41 1
|
4天前
内部类
内部类是定义在类中的类,分为成员、静态、局部和匿名四种。成员内部类属于外部类成员,可被权限修饰符修饰;静态内部类仅访问外部静态成员;局部内部类定义在方法内;匿名内部类用于简化接口或父类的实现,常用于一次性场景,提升代码简洁性。(238字)
39 1
|
4天前
|
Oracle Java 关系型数据库
Java命名规范
Java命名规范涵盖包、类、方法、变量等命名规则。包名全小写,类名首字母大写采用驼峰法,接口常用形容词,抽象类以Abstract/Base开头,异常类以Exception结尾,方法名小写驼峰,常量全大写用下划线分隔,枚举值按常量规范命名,提升代码可读性与一致性。
61 0
|
3天前
|
存储 弹性计算 Cloud Native
2026年最新一期阿里云优惠券解析:五种主要优惠券类型、金额、领取及使用规则讲解
为了进一步降低用户的上云成本,2026年阿里云继续推出多种优惠券,以助力用户轻松实现数字化转型。本文将全面介绍阿里云目前提供的五种主要优惠券类型,包括老友专属福利券包、无门槛优惠券、出海补贴优惠券、迁云补贴优惠券以及按量达标代金券等,帮助用户深入了解这些优惠券的金额、领取及使用规则,从而更好地利用这些优惠,提升购买体验。
|
2天前
|
移动开发 API 双11
2026年阿里云最新一期域名注册和续费优惠口令内容,口令获取地址和使用教程参考
近年来,各大注册商的域名注册和续费价格都在上涨,为此,阿里云推出了针对域名产品注册、转入和续费的优惠口令。使用域名优惠口令,可享受一定的优惠。最新一期的优惠口令获取地址可通过阿里云的万网微信公众号或活动页面获取优惠口令,但不能与同域名产品的其他优惠(含代金券、折扣、满减等)同时使用。
173 3
|
4天前
|
存储 Web App开发 安全
2026年网站搭建教程(详细的建站步骤)
企业网站搭建全流程:从需求分析、架构规划到域名注册、主机配置,依托PageAdmin系统完成部署与内容建设,经多维度测试后正式上线。流程覆盖前期准备、基础搭建、系统安装、内容填充及发布运维,确保网站稳定、兼容、易维护,适用于企业、政务等机构,具备强复制性与标准化指导意义。(238字)
111 3
|
6天前
|
供应链 容器
什么是code128码?
Code 128码是一种高密度条形码,支持全ASCII字符,广泛用于物流、运输和供应链管理。它分为A、B、C三个子集,可编码字母、数字及控制符,具有高密度、小空间优势,适用于复杂数据编码需求。
239 3
|
6天前
阿里云产品十二月刊来啦
全新万相2.6系列模型正式发布,通义百聆语音交互模型开源,PAI 模型评测新支持双模型离线竞技功能|产品十二月刊
77 12
阿里云产品十二月刊来啦