为什么要泛型?
1、汇合中寄存对象时,避免类型转换异样
2、办法重用
什么泛型办法
什么是泛型类型
通配符的作用是什么
void method1(List list)
void method2(List<E> list)
void method3(List<?> list)
这三者又什么区别?
method1可能产生类型转换异样,因为须要应用这本人手动类型转换
method2编辑器将类型转换异样在编辑期通知你,因为编辑器帮你做类型转换
method3不晓得类型,所以应用?,次要是为了增加了不同类型的对象,产生类型异样,所以禁止向其中增加对象
为什么不能创立泛型数组
因为数组类型没有类型查看机制
例如Integer[]是Object[]的子类,所以能够用Object[]的变量o来援用Integer[]对象,而后用这个变量o来扭转数组中的对象,比方将o[0]="str",这时编译器是不会报错的,然而运行就会报错。因为类型不同