【转载自:】
在没有泛型之前,一旦把一个对象“丢进”Java集合中,集合就会忘记对象的类型,把所有的对象都当成是Object类型处理。
当程序从集合中取出对象之后,就要进行强制类型转换,这种强制类型转换不仅代码臃肿,还容易引起 ClassCastException 异常。
在JDK1.5之后,Java引用了“参数化类型(parameterized type)”的概念,允许我们在创建集合是指定集合元素的类型。
如List<String>,这表明该List只能保存字符串类型的对象。Java的参数化类型被称为泛型(Generic)。
深入泛型
所谓泛型:就是允许定义类、接口时指定类型形参,这个类型形参将在声明变量,创建对象时确定(即传入实际的类型参数,也可称为类型实参)。