26. 不要使用原始类型
避免ClassCastException,提早的发现不必要的错误
27. 消除非检查警告
28. 列表优于数组
数组是协变的(协变:如果Son是Parent的子类型,则数组Son[]是数组Parent[]的子类型)。
29. 优先考虑使用泛型
30. 使用限定通配符来增加API的灵活性
31. 优先使用泛型方法
32. 使用限定通配符来增加API的灵活性
33. 优先考虑类型安全的异构容器
总结:
- 可以统一数据类型,便于操作
- 将运行时的异常提前到了编译时,提早发现错误
- 避免类型强制转换
- 实现代码的模块化,把数据类型当作参数传递,提高了可重用性