泛型

定义

所谓泛型,就是运行定义类、接口时指定类型参数,这个参数将在声明变量、创建对象时确定。jdk1.5改写了集合框架中的全部接口和类,为这些接口、类增加了泛型支持,从而可以在声明集合变量、创建集合对象时传入类型实参,比如:List<String>ArrayList<String>

背景

java集合有个缺点:当把一个对象丢进集合后,集合就会忘记这个对象的数据类型,当再次取出该对象时,该对象的编译类型就变成了object类型。

java集合之所以被设计成这样,是因为设计集合的程序员不会知道我们需要用它来保存什么类型的对象,所以,就把集合设计成能保存任何类型的对象,只要求具有很好的通用性。但这样做也带来两个问题:

1、集合对元素类型没有任何限制,这样可能引发一些问题:例如想创建一个只能保存dog对象的集合,但程序也可以轻易地将cat对象丢进去,所以可能引发一些问题。

2、由于集合丢失了对象的状态信息,只知道它盛装的是object,因此取出元素后,通常还需要进行强制类型转换,这种转换不仅代码臃肿,而且容易引起ClassCastExeception异常。

作用

1、增加泛型后的集合,就会记住集合中元素的类型,并可以在编译时检查集合中元素的类型,如果试图向集合中添加不满足类型要求的对象,编译器就会提示错误。

2、增加泛型后的集合,可以让代码更加简洁、程序更加健壮。

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值