6

JDK 在处理安全 var args 方面的主要区别是什么?

在此处输入图像描述

以上在 JDK 1.6 中发出警告 -

类型安全:为可变参数创建 List 的通用数组

  • 为什么会在此处看到此警告?
  • JDK1.7 做了什么来抑制它?

请帮我理解。

4

2 回答 2

5

JDK7 添加了@SafeVarargs 注释来说明泛型可变参数何时真正安全,并将该注释应用于例如Collections.addAll.

于 2012-10-29T18:53:30.250 回答
2

它是 Project Coin 的一部分。您可以在这里查看提案h​​ttp: //mail.openjdk.java.net/pipermail/coin-dev/2009-March/000217.html

简而言之,此警告已移至方法声明而不是方法调用。对此有很好的评论:https ://stackoverflow.com/a/3819038/891391

于 2012-10-29T18:45:20.520 回答