(Generic paradigm in java)Java泛型

本文深入解析Java泛型的类型参数命名约定,如Eelement、K/V、N等,并探讨上界、下界、无界通配符的使用,以及泛型擦除的概念。通过实例说明泛型如何提高代码的安全性和效率。

Java泛型类型参数命名约定
E element 主要由java集合框架使用
K,V 主要用来表示键值对,K用来表示key即类型,V用来表示value即值.
N 主要用于表示数字
在一个方法或者泛型做属性时,经常用T S U V 表示第一个 第二个 第三个 第四个参数

例:
class A<T,S>{
		private T t;
		private S s;
}

上界,下界,无界通配符
public static void A(List<? extends Number> numberlist) //上界用 extends
public static void A(List<? super Cat> catList) //下界用 super
public static void A(List<?> list) //不确定类型时候用?
优点:用于集合的时候 检查错误,将运行时才能发现的错误转换到了编译时期,更加方便,安全.
泛型的擦除:运行时,会将泛型去掉,编译器将java源代码转换为.class文件,虚拟机加载并运行.class文件.对于泛型类,java编译器会将泛型代码转换为非泛型代码,就像普通类生成的. class文件时不带泛型的.
为什么会擦除呢?
因为泛型时jdk1.5以后才有的,类在运行的时候首先会被类加载器加载检查,而这类加载器时JDK1.4的,所以在加载的时候会擦除.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值