黑马程序员技术交流社区
标题:
泛型总结
[打印本页]
作者:
天秋雨
时间:
2016-11-21 19:11
标题:
泛型总结
泛型是在定义集合之前要明确的存储的引用数据类型。
泛型是jdk1.5出现的安全新特性,解决了ClassCastExceptian(类型转换错误)的问题,提高了安全性,并且避免了强转的麻烦。
1,当要操作的元素的数据类型已知时:
在集合中的应用:
ArrayList<String> al=new ArrayList<String>();
在方法中的应用:
1> pubiic void showDemo(Collection<String> aa){
}
2> pubiic class Person implements Comparable<Person>
2, 当要操作的元素的数据类型不确定时:
1》自定义泛型类
pubiic <w> void showDemo(w aa){
}
泛型放在修饰符后返回值类型之前
2》通配符的基本使用
public void showDemo2(Collection<?> aa)//Collection<?> aa=new ArrayList<?>(){
Iterrator <?> it= aa.iterator();
3>泛型限定 上限
public void showDemo2(Collection<? extends Person> aa){
Iterrator <? extends Person> it= aa.iterator();
4>泛型限定 下限
public void showDemo2(Collection<? super worker> aa){
Iterrator <? extends Person> it= aa.iterator();
作者:
青火
时间:
2016-11-21 20:31
泛型的上下限是什么啊
作者:
lieyemu
时间:
2016-11-21 20:34
学习 学习
作者:
efkllx
时间:
2016-11-21 23:41
不懂,不会用啊
作者:
天秋雨
时间:
2016-11-22 09:25
青火 发表于 2016-11-21 20:31
泛型的上下限是什么啊
上下限就是在你往集合中存放元素的时候所存元素类型的范围。
比如说在方法public void showDemo(Collection<? extends Person> aa)中,Person就是你所存元素类型的上限。也就是说参数aa的类型只能是Person或者Person的子类。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2