小编Gar*_*een的帖子

为什么编译器允许我将一个泛型集合分配给声明为特定于类的集合的变量?

我无法理解为什么java编译器允许为非特定集合分配已指定变量的集合.像这样:

    ArrayList list = new ArrayList();
    // Operations on list
    ArrayList<String> stringList = list;
Run Code Online (Sandbox Code Playgroud)

在这种情况下可能存在各种类型的转换错误,在我看来,如果编译器阻止你首先执行此操作会更有意义.

我只是问,因为我很好奇这个语言的这个有点奇怪的方面,我实际上并没有让代码工作有困难(虽然我可能有一天我需要使用一个包含各种类的ArrayList它).

java generics

4
推荐指数
1
解决办法
129
查看次数

标签 统计

generics ×1

java ×1