JDK在處理安全變量方面的主要區別是什麼?在Java 6和7中處理安全變參數,需要澄清
上述問題在JDK 1.6警告 -
類型安全:一個可變參數 參數創建列表的通用陣列
- 這是爲什麼警告在這裏看到?
- JDK1.7做什麼來壓制它?
請幫我理解。
JDK在處理安全變量方面的主要區別是什麼?在Java 6和7中處理安全變參數,需要澄清
上述問題在JDK 1.6警告 -
類型安全:一個可變參數 參數創建列表的通用陣列
請幫我理解。
JDK7增加@SafeVarargs annotation來記錄通用可變參數是否真正安全,並將該註釋應用於例如Collections.addAll
。
這是項目投幣的一部分。你可以看看這裏的建議http://mail.openjdk.java.net/pipermail/coin-dev/2009-March/000217.html
簡而言之,這個警告被移到了方法聲明而不是方法調用。對此有一個很好的評論:https://stackoverflow.com/a/3819038/891391