去除编译警告@SuppressWarnings注解用法详解(转)
生活随笔
收集整理的這篇文章主要介紹了
去除编译警告@SuppressWarnings注解用法详解(转)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
使用:
@SuppressWarnings(“”)
@SuppressWarnings({})
@SuppressWarnings(value={})
編碼時我們總會發現如下變量未被使用的警告提示:
上述代碼編譯通過且可以運行,但每行前面的“感嘆號”就嚴重阻礙了我們判斷該行是否設置的斷點了。這時我們可以在方法前添加?
@SuppressWarnings("unused")?去除這些“感嘆號”。
一.@SuppressWarings注解
作用:用于抑制編譯器產生警告信息。
示例1——抑制單類型的警告:
?
@SuppressWarnings("unchecked") public void addItems(String item){@SuppressWarnings("rawtypes")List items = new ArrayList();items.add(item); }示例2——抑制多類型的警告:
?
?
@SuppressWarnings(value={"unchecked", "rawtypes"}) public void addItems(String item){List items = new ArrayList();items.add(item); }示例3——抑制所有類型的警告:
@SuppressWarnings("all") public void addItems(String item){List items = new ArrayList();items.add(item); }二.注解目標
?
通過?@SuppressWarnings?的源碼可知,其注解目標為類、字段、函數、函數入參、構造函數和函數的局部變量。
?而大家建議注解應聲明在最接近警告發生的位置。?
二.抑制警告的關鍵字
| 關鍵字 | 用途 |
| all | to suppress all warnings |
| boxing? | to suppress warnings relative to boxing/unboxing operations |
| cast | to suppress warnings relative to cast operations |
| dep-ann | to suppress warnings relative to deprecated annotation |
| deprecation | to suppress warnings relative to deprecation |
| fallthrough | to suppress warnings relative to missing breaks in switch statements |
| finally? | to suppress warnings relative to finally block that don’t return |
| hiding | to suppress warnings relative to locals that hide variable |
| incomplete-switch | to suppress warnings relative to missing entries in a switch statement (enum case) |
| nls | to suppress warnings relative to non-nls string literals |
| null | to suppress warnings relative to null analysis |
| rawtypes | to suppress warnings relative to un-specific types when using generics on class params |
| restriction | to suppress warnings relative to usage of discouraged or forbidden references |
| serial | to suppress warnings relative to missing serialVersionUID field for a serializable class |
| static-access | to suppress warnings relative to incorrect static access |
| synthetic-access? | to suppress warnings relative to unoptimized access from inner classes |
| unchecked | to suppress warnings relative to unchecked operations |
| unqualified-field-access | to suppress warnings relative to field access unqualified |
| unused | to suppress warnings relative to unused code |
?
- all?to suppress all warnings (抑制所有警告)
- boxing?to suppress warnings relative to boxing/unboxing operations(抑制裝箱、拆箱操作時候的警告)
- cast?to suppress warnings relative to cast operations (抑制映射相關的警告)
- dep-ann?to suppress warnings relative to deprecated annotation(抑制啟用注釋的警告)
- deprecation?to suppress warnings relative to deprecation(抑制過期方法警告)
- fallthrough?to suppress warnings relative to missing breaks in switch statements(抑制確在switch中缺失breaks的警告)
- finally?to suppress warnings relative to finally block that don’t return (抑制finally模塊沒有返回的警告)
- hiding?to suppress warnings relative to locals that hide variable()
- incomplete-switch?to suppress warnings relative to missing entries in a switch statement (enum case)(忽略沒有完整的switch語句)
- nls?to suppress warnings relative to non-nls string literals(忽略非nls格式的字符)
- null?to suppress warnings relative to null analysis(忽略對null的操作)
- rawtypes?to suppress warnings relative to un-specific types when using generics on class params(使用generics時忽略沒有指定相應的類型)
- restriction?to suppress warnings relative to usage of discouraged or forbidden references
- serial?to suppress warnings relative to missing serialVersionUID field for a serializable class(忽略在serializable類中沒有聲明serialVersionUID變量)
- static-access?to suppress warnings relative to incorrect static access(抑制不正確的靜態訪問方式警告)
- synthetic-access?to suppress warnings relative to unoptimized access from inner classes(抑制子類沒有按最優方法訪問內部類的警告)
- unchecked?to suppress warnings relative to unchecked operations(抑制沒有進行類型檢查操作的警告)
- unqualified-field-access?to suppress warnings relative to field access unqualified (抑制沒有權限訪問的域的警告)
- unused?to suppress warnings relative to unused code ?(抑制沒被使用過的代碼的警告)
?
原文地址
轉載于:https://www.cnblogs.com/suruozhong/p/6264241.html
總結
以上是生活随笔為你收集整理的去除编译警告@SuppressWarnings注解用法详解(转)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: maven中添加servlet、jsp依
- 下一篇: 博客园屏蔽广告CSS