泛型为集合提供了编译时类型检查。
23、不要在代码中使用原生态类型
声明中具有一个或多个类型参数的类或接口统称为泛型。List<E>
是一个参数化类,表示元素类型为E
的列表。为了提供兼容性,每个泛型都定义一个原生态类型,即不带任何实际类型参数的泛型名称。例如,List<E>
的原生态类型为List
。
使用原生态类型将逃避编译时的类型检查,失掉泛型在安全性和表述性方面的优势。出错时(运行时错误)代码所处的位置与包含错误的代码可能相距很远,难以调试。不应该在代码中使用原生态类型。
原生态类型List与参数化类型List