这样就形成
Set了通用集。当您声明时:
Set<BluetoothDevice> pairedDevices
表示
Set对象应仅包含类型的对象
BluetoothDevice。通常建议使用泛型集合,因为您可以获得类型安全性的直接好处。
Java Collections framework旨在处理任何类型的对象。在 Java 1.4
及更早版本中,它们用作
java.lang.Object添加到集合中的任何对象的类型。使用对象时,必须将它们显式转换为所需的类型,否则会出现编译时错误。
Java 5中 引入的Java泛型提供了更强的类型安全性。泛型允许将类型作为参数传递给类,接口和方法声明。例如:
Set<BluetoothDevice> pairedDevices
在
<BluetoothDevice>本例中为一个类型参数。使用type参数,编译器确保我们仅将集合与兼容类型的对象一起使用。另一个好处是,我们不需要转换从集合中获得的对象。现在,可以在编译时检测到对象类型错误,而不是在运行时抛出转换异常。
建议阅读:
- Oracle泛型教程
- 在J2SE 5.0中使用和编程泛型
- Java中的泛型-Wiki
- Java理论与实践:泛型陷阱
- Java泛型常见问题解答
- 协方差和自变量



