前言:首先泛型是自从JDK1.5之后才提出来的新特性,下面分别对没有使用泛型跟使用了泛型做出比较。所谓泛型,就是类型参数化如ArrayList<String>中的String就是参数。
作用:泛型可以做到代码可扩展性,减少代码中重量。
第一是没有使用泛型的情况的缺点有:第一必须得进行类型强制转换 第二在编译期可能没有发现错误,而是到了执行期才可能发现错误。
如代码编写如下及报错信息如下:

第二使用了泛型的情况,可以在编译期就抛出错误:

总结:
在没有使用泛型时,ArrayList类的底层维护了一个Object[],通过这种方式来实现存放不同类型的数据,所以在ArrayList names = new ArrayList(); names.add(123);才不会报错。但是在取出来时想要将Integer类型转换成String类型就会报类型转换错误了。
没有使用泛型缺点:
1.类型不安全,而且错误只有在运行期才会得到体现。
2.需要频繁的进行类型转换
使用了泛型优点:
1.类型安全。
2.消除强制类型转换。
浙公网安备 33010602011771号