在 JSE 5.0 中新增了泛型(Generics)功能,而其许多 API 都根据这个新功能重新改写了,例如 List、Map、Set 等相关类。即使不了解泛型的新功能,也可以按照 J2SE 1.4 或旧版本的语法来使用这些类,但编译时会出现一些警告(Warnings)。
泛型解决的不只是然你少写了几个类的程序代码,还在于让你定义安全的泛型类(Generics Class)。泛型提供编译时期检查,你不会因为将对象置入某个容器(Contatiner)而失去其类型。
1、泛型入门
1.1 没有泛型之前
考虑设计下面的 BooleanFoo 与 IntegerFoo 两个类,这是两个很无聊的类,但足以说明需求。
1 | package com.sunzn.generics; |