为什么使用泛型(generic)
有类似这样的一种需求,对于一个List,我们有可能想要存储一个int类型数据的list,也可能想要一个string类型的list。我们不希望为每个类型的对象都单独写一个list类。在这种需求下,为了使得编写的代码可以被不同类型的对象重用,提高代码使用率,出现了泛型程序设计。提到代码重用,我们首先想到的就是继承,实际上,在Java增加泛型类之前,java的泛型程序设计就是通过继承来实现的。
继承存在强制类型转换以及可能运行时类型转换错误的问题。引入泛型
有类似这样的一种需求,对于一个List,我们有可能想要存储一个int类型数据的list,也可能想要一个string类型的list。我们不希望为每个类型的对象都单独写一个list类。在这种需求下,为了使得编写的代码可以被不同类型的对象重用,提高代码使用率,出现了泛型程序设计。提到代码重用,我们首先想到的就是继承,实际上,在Java增加泛型类之前,java的泛型程序设计就是通过继承来实现的。
继承存在强制类型转换以及可能运行时类型转换错误的问题。引入泛型