我希望我的问题不会听起来很愚蠢,但我想知道这两行之间的区别是什么:
(假设我创建了一个名为Cow的课程.)
ArrayList<Cow> c1 = new ArrayList<Cow>();
ArrayList<Cow> c2 = new ArrayList();
Run Code Online (Sandbox Code Playgroud)
在此先感谢您的解释.
目前,由于类型擦除,基本上没有区别.第一种形式是首选; 第二种形式使用原始类型,仅支持与旧版Java的向后兼容.如果您使用它,一个好的编译器会给你警告.
由于在Java语言规范,第三版,§4.8解释说:
原始类型的使用仅允许作为遗留代码兼容性的让步.强烈建议不要在将通用性引入Java编程语言之后编写的代码中使用原始类型.未来版本的Java编程语言可能会禁止使用原始类型.
(重点是原创).
| 归档时间: |
|
| 查看次数: |
152 次 |
| 最近记录: |