Java 泛型概念与优势(一)

发布时间:2023-07-26 17:30

1.泛型的由来:

JAVA推出泛型其实和集合有很大关系,我们在使用集合的过程当中一直使用的是泛型集合,类似ArrayList,为什么这么说呢?
如果我们创建一个非泛型的集合对象,如下所示:
Java 泛型概念与优势(一)_第1张图片
Java 泛型概念与优势(一)_第2张图片
这种没有采用泛型的集合的优缺点如下:

优点:填充元素很方便,什么类型都能接收;

缺点:从集合中取出元素使用,使用时就是要明确数据类型,但是这个集合里面都是存Object类型,这种使用方式就不是很合适了;会出现类型转换异常情况,产生原因如下:Intger类型不能转为String类型
Java 泛型概念与优势(一)_第3张图片

通过上面的例子,我们可知JAVA推出泛型以前,程序员可以构建一个元素类型为Object的集合,该集合能够存储任意的数据类型对象,而在使用该集合的过程中,需要程序员明确知道存储每个元素的数据类型,否则很容易引发ClassCastException异常。针对这种情况,Java就推出了泛型。

2.泛型概念:

Java泛型(generics)是JDK5中引入的一个新特性,泛型提供了编译时类型安全监测机制,该机制允许我们在编译时检测到非法的类型数据结构。接下来我们通过一个泛型集合解决一下上面非泛型集合的存在的问题。

Java 泛型概念与优势(一)_第4张图片
我们看下泛型集合ArrayList的源码:
Java 泛型概念与优势(一)_第5张图片
泛型的本质就是类型参数化,也就是所操作的数据类型被指定为一个参数。

3.泛型优点:

(1)类型安全:指定了集合存储的某种类型,编译时会检查存储类型是否符合要求
(2)消除了强制类型的转换:由于指定了集合存储的某种类型,在使用集合里面的元素时我们可以拿指定类型接收里面的元素。

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号