泛型1
来源:互联网 发布:违章查询软件下载 编辑:程序博客网 时间:2024/05/17 21:05
泛型和通配符类型之间的区别?如set<E>和set<?>
set<E>只允许放E类型的元素,set<?>等于set<? extends Object>,只能取元素不能放元素;
class
Abc {}
set<Abc> 限定了元素类型为Abc
set<?> 这个木有限定
泛型的好处
Java 语言中引入泛型是一个较大的功能增强。不仅语言、类型系统和编译器有了较大的变化,以支持泛型,而且类库也进行了大翻修,所以许多重要的类,比如集合框架,都已经成为泛型化的了。
这带来了很多好处:
1,类型安全。 泛型的主要目标是提高 Java 程序的类型安全。通过知道使用泛型定义的变量的类型限制,编译器可以在一个高得多的程度上验证类型假设。没有泛型,这些假设就只存在于程序员的头脑中(或者如果幸运的话,还存在于代码注释中)。
2,消除强制类型转换。 泛型的一个附带好处是,消除源代码中的许多强制类型转换。这使得代码更加可读,并且减少了出错机会。
3,潜在的性能收益。 泛型为较大的优化带来可能。在泛型的初始实现中,编译器将强制类型转换(没有泛型的话,程序员会指定这些强制类型转换)插入生成的字节码中。但是更多类型信息可用于编译器这一事实,为未来版本的 JVM 的优化带来可能。由于泛型的实现方式,支持泛型(几乎)不需要 JVM 或类文件更改。所有工作都在编译器中完成,编译器生成类似于没有泛型(和强制类型转换)时所写的代码,只是更能确保类型安全而已。
阅读全文
0 0
- 泛型1:
- 泛型1
- 泛型1
- 泛型1
- 泛型1
- 泛型-基本概念1
- 泛型 lesson 1
- java泛型1
- 泛型1例
- 泛型(1)_容器
- java泛型(1)
- C# -- 泛型(1)
- Java泛型(1)
- scala进阶1-泛型
- JAVA泛型1
- 泛型[1]定义&传递
- 泛型(1)
- Java 泛型 (1)
- Android自定义控件
- hdu 1671 phone list Trie 树
- EasyPR + VS2015 + OpenCV330配置
- 点击条目webView加载网页
- ssh-keygen 的 详解
- 泛型1
- oracle中的游标的原理和使用详解
- springboot+mybatis
- java多态经典例子
- Linq DataTable的修改和查询
- Linux UBI子系统设计初探
- mysql之路第三篇
- 802.1x认证详细剖析
- Artisan命令