java - 使用库泛型类而不使用其泛型功能会使其成为原始类型吗?

标签 java generics

我正在学习java,并且已经讨论了泛型和原始类型的主题。我发现我一直在Java中使用一些通用的库类(以前不知道),并且我一直在使用它们,就好像它们只是普通的类一样(将它们声明为普通对象)。这会导致原始类型吗?既然据说要避免原始类型,那么在使用任何 Java 的库类或接口(interface)之前,我是否应该确定它们是否是泛型的?如果一个类是通用的,那么就按其含义使用它(参数化类型)?

最佳答案

如果一个类是这样声明的:

public class MyClass<T>

你可以像这样使用它:

MyClass myVariable = new MyClass();

那么是的,它确实是一个原始类型,你不应该使用它。 集合类(如ArrayList) 在 Java 5+ 上是通用的,并且您应该始终使用通用变体 当它可用时。观察编译器警告; 除其他事项外,他们还通知有关使用泛型的信息。

关于java - 使用库泛型类而不使用其泛型功能会使其成为原始类型吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11464504/

相关文章:

JavaPOS : Cannot connect to printer

java - 在 Android 上将我的应用程序置于后台后如何恢复以前的应用程序

c# - 如何添加类型约束以在泛型方法中包含任何可序列化的内容?

typescript 接口(interface) : Any way to describe "<Property> of <Interface>"

java - 如何在类定义中的泛型类型中捕获子类型?

java.util.Scanner#findWithHorizo​​n 在 32Mb 输入流上抛出 OutOfMemory 异常

java - 在 Tomcat 上运行 Java .war 时出现问题

java - 如何膨胀 fragment 中的 View ?

java - 如果第一个数组中的所有项目都出现在第二个数组中,则返回 true

c# - 如何在迭代时从通用列表中删除元素?