为什么要使用泛型?
A.在编译时进行类型检查,避免运行时类型转换错误。例如Integer/String
B.不再需要强制类型转换。当我们从一个泛型里面取数据出来之后不必(Integer/String)
相关的知识点有:
1.类型擦除
2.不能向上转型
3.类型检查,减少bug发生
4.不能创建泛型数组
准确地说应该是可以声明泛型数组,但是分配泛型数组比较复杂。如 (T[]) Array.newInstance(type, size);
5.PECS原则
Producer extends Consumer Super,即一个泛型类如果作为一个只get数据的生产者,则使用extends;如果泛型类是消耗数据set,则使用super。