泛型_泛型简介

网友投稿 808 2022-11-21

泛型_泛型简介

泛型_泛型简介

1 泛型基本概念

泛型是 JDK1.5 以后增加的,它可以帮助我们建立类型安全的集合。泛型的本质就是“数据类型的参数化”,处理的数据类型不是固定的,而是可以作为参数传入。 我们可以把“泛型”理解为数据类型的一个占位符(类似:形式参数),即告诉编译器,在调用泛型时必须传入实际类型。这种参数类型可以用在类、接口和方法中,分别被称为泛型类、泛型接口、泛型方法。参数化类型,白话说就是:\1. 把类型当作是参数一样传递。\2. <数据类型> 只能是引用类型。

2 泛型的好处

在不使用泛型的情况下,我们可以使用 Object 类型来实现任意的参数类型,但是在使用时需要我们强制进行类型转换。这就要求程序员明确知道实际类型,不然可能引起类型转换错误;但是,在编译期我们无法识别这种错误,只能在运行期发现这种错误。使用泛型的好处就是可以在编译期就识别出这种错误,有了更好的安全性;同时,所有类型转换由编译器完成,在程序员看来都是自动转换的,提高了代码的可读性。总结一下,就是使用泛型主要是两个好处:(1)代码可读性更好【不用强制转换】(2)程序更加安全【只要编译时期没有警告,运行时期就不会出现 ClassCastException 异常】

3 类型擦除

编码时采用泛型写的类型参数,编译器会在编译时去掉,这称之为“类型擦除”。泛型主要用于编译阶段,编译后生成的字节码 class 文件不包含泛型中的类型信息,涉及类型转换仍然是普通的强制类型转换。 类型参数在编译后会被替换成Object,运行时虚拟机并不知道泛型。泛型主要是方便了程序员的代码编写,以及更好的安全性检测

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:面试题-集合
下一篇:Hive SQL join语句
相关文章

 发表评论

暂时没有评论,来抢沙发吧~