Java 教程是为 JDK 8 编写的。本页中描述的示例和实践未利用在后续版本中引入的改进。
简而言之,泛型使 types(类和接口)在定义类、接口和方法时成为参数。与方法声明中使用的更熟悉的 formal parameters (形式参数) 非常相似,类型形参为你提供了一种让不同的输入重用相同的代码的方法。不同之处在于形式参数的输入是值,而类型形参的输入是类型。
使用泛型的代码比非泛型代码有许多好处:
List list = new ArrayList(); list.add("hello"); String s = (String) list.get(0);
List<String> list = new ArrayList<String>(); list.add("hello"); String s = list.get(0); // no cast