嗨,我正在学习卡普兰selftest问题和答案。我真的坚持一个关于Unchecked转换警告的解释。它指出未经检查的转换警告vs通用类型的参考
下面的语句将不会产生未检查转换警告:
ArrayList list = new ArrayList<>();
但在接下来的一段,它指出
下面的语句将产生选中警告:
ArrayList list = new ArrayList<>(); //generates a conversion warning
我在eclipse检查它提供了以下警告味精
的ArrayList是一个原始类型。参考通用类型ArrayList应参数化
有人可以帮助我吗?这只是一个错字错误,或者我错过了一些东西。 在此先感谢。
编辑 我想我没有正确解释我的问题。其实我正在寻找的是“回答这样一个问题的正确答案是什么,例如ArrayList list = new ArrayList <>();生成未经检查的转换True/False。”因为在Kaplan selftest中给出了两个不同的语句,我有点丢失,虽然当我在Eclipse中尝试代码时,它不会生成Unchecked转换警告,但它会引用泛型类型..警告。所以我正在寻找你的建议/建议。再次提前谢谢
除了第二条语句中的尾注释之外,两条语句完全相同。所以难怪他们都会产生相同的行为,在这种情况下,会有警告 –
两者都会产生相同的行为,但我对解释感到困惑。在第一个声明中,它声明它不会生成未经检查的转换警告,但在接下来的声明中它声明它将生成未经检查的警告。所以我很困惑哪一个应该是正确的答案,尽管Eclipse生成“参考通用...”警告而不是转换警告。我真的需要理解它来回答考试问题。 –