List listOne = new LinkedList<Shxx>();
List<Shxx> listTwo = new LinkedList<Shxx>();
List listThree = new LinkedList();
List<Shxx> listFour = new LinkedList();

最佳答案

List listOne = new LinkedList<Shxx>();

抛弃类型信息,可能根本不使用泛型。
List<Shxx> listTwo = new LinkedList<Shxx>();

正确使用泛型,提供类型安全。
List listThree = new LinkedList();

不使用泛型(即Java 5之前的代码),也没有类型安全性。
List<Shxx> listFour = new LinkedList();

会引起编译器警告,但其他原因可以,因为该列表只能通过类型安全引用使用,并且最初为空。无论如何都不应该这样做,因为如果您忽略有关原始类型使用的编译器警告,那么您也可能会忽略其他不像原始类型那样良性的警告。从泛型中获得最大类型安全性的最佳方法是消除所有相关的编译器警告。

10-06 15:35