要是无法接受这些限制, 可以使用泛型方法(见30条)或者有限制的通配符类型(见31条).不要在新代码中使用原生态类型, 有两个小小的例外:在类文字(class literal)中必须使用原生态类型....所以实践中常常会额外声明一个局部变量来加上这个注解, 以缩小注解范围.第28条 列表(lists)优先于数组(arrays)数组与泛型相比, 有两个重要的不同点:首先:数组是协变的(covariant)...编译器通过检查方法参数的类型来计算类型参数的值, 这个过程叫做类型推导(type inference).利用这个特点, 可以利用静态工厂方法来简化泛型构造器的调用.总而言之, 泛型方法优先于需要客户端来强转参数和返回值的方法...把一个值保存在泛型的可变参数数列中是不安全的.那么为什么声明泛型的数组是非法的, 而这种泛型可变参数声明是合法的呢?...super T> c, T... elements), EnumSet.of(E first, E... rest).这些类库方法是类型安全的.在Java 7之前, 对泛型可变参数的警告只能在客户端通过