Java 中的@SuppressWarnings 註解警告名稱
@SuppressWarnings 註解應用於程式碼區塊時,會抑制某些類型的編譯器警告。 @SuppressWarnings 註解中可以使用的有效警告名稱會因所使用的 IDE 或編譯器而異。
有效警告名稱列表:
以下列表包括Eclipse Galileo 的有效警告名稱:
- all:抑制所有警告。
- 裝箱:抑制與裝箱/拆箱相關的警告操作。
- cast:抑制與轉換操作相關的警告。
- dep-ann:抑制與已棄用註釋相關的警告。
- deprecation:抑制與棄用相關的警告。
- fallthrough:抑制與 switch 語句中缺少中斷相關的警告。
- 最後:抑制與不回傳的finally區塊相關的警告。
- 隱藏:抑制與隱藏變數的局部變數相關的警告。
- incomplete-switch :抑制與 switch 語句中缺少條目相關的警告(枚舉大小寫)。
- nls:抑制與非 nls 字串文字相關的警告。
- null:抑制與 null 分析相關的警告。
- restriction:抑制與使用不鼓勵或禁止的引用相關的警告。
- serial:抑制與可序列化類別缺少serialVersionUID欄位相關的警告。
- static-access:抑制與不正確的靜態存取相關的警告。
- synthetic- access:禁止與內部類別的未最佳化存取相關的警告。
- unchecked:禁止與未經檢查的操作相關的警告。
- unqualified-field-access :抑制與不合格欄位存取相關的警告。
- unused:抑制與未使用代碼相關的警告。
後續版本中引入了其他警告名稱Eclipse:
- javadoc:抑制與Javadoc 警告相關的警告(Indigo 及更高版本) 。
- rawtypes:抑制與 Javadoc 警告相關的警告原始類型的使用(Indigo 及更高版本)。
- static-method:禁止與可宣告為靜態的方法相關的警告(Indigo 及更高版本)。
- super:抑制與在沒有超級呼叫的情況下覆蓋方法相關的警告(Indigo 及更高版本)。
- resource:抑制與使用Closeable 類型的資源(Juno 和更高版本)相關的警告
- sync-override:在覆蓋同步方法時抑制因缺少同步而出現的警告(Juno 及更高版本)。
需要注意的是不同 IDE 或編譯器的有效警告名稱清單可能有所不同。請務必查閱 IDE 或編譯器提供的文檔,以取得有關支援的警告名稱的最新資訊。