最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java中的SuppressWarnings注解使用

 更新時間:2022年11月17日 10:10:34   作者:兮動人  
這篇文章主要介紹了Java中的SuppressWarnings注解使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

@SuppressWarnings 注解

@SuppressWarnings: 抑制編譯器警告

如下,可以看到idea中有警告的顏色標(biāo)注

當(dāng)我們不希望看到這些警告的時候,可以使用 SuppressWarnings注解來抑制警告信息

在{" "} 中,可以寫入你希望抑制(不顯示)警告信息

在idea中可以看到這些警告的信息,然后根據(jù)下面的屬性介紹依次填入對應(yīng)的抑制警告的參數(shù),如:

  • rawtypes,抑制與使用raw類型相關(guān)的警告

  • unchecked,抑制與未檢查的作業(yè)相關(guān)的警告

  • unused,抑制與未用的程式碼及停用的程式碼相關(guān)的警告

可以從下面的警告參數(shù)中找到對應(yīng)的警告參數(shù)即可??梢钥吹骄嫒勘灰种屏?/p>

當(dāng)然,也可以直接選擇參數(shù) all,警告就全部會被抑制

關(guān)于SuppressWarnings 作用范圍是和放置的位置相關(guān)

比如 @SuppressWarnings放置在 main方法,那么抑制警告的范圍就是 main,通常我們可以放置具體的語句、方法、 類。

  • @SuppressWarnings注解的常見的值
  • unchecked是忽略沒有檢查的警告
  • rawtypes是忽略沒有指定泛型的警告(傳參時沒有指定泛型的警告錯誤)
  • unused是忽略沒有使用某個變量的警告錯誤
  • @SuppressWarnings可以修飾的程序元素,查看 @Target

查看源碼:

(1) 放置的位置就是 TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE

(2) 該注解類有數(shù)組 String[] values() ,設(shè)置一個數(shù)組比如 {"rawtypes", "unchecked", "unused"}

生成@SupperssWarnings時,不用背,直接點擊左側(cè)的黃色提示,就可以選擇(注意可以指定生成的位置)

@SuppressWarning 中的屬性介紹以及屬性說明

  • all:抑制所有警告
  • boxing:抑制與封裝/拆裝作業(yè)相關(guān)的警告
  • cast:抑制與強制轉(zhuǎn)型作業(yè)相關(guān)的警告
  • dep-ann:抑制與淘汰注釋相關(guān)的警告
  • deprecation:抑制與淘汰的相關(guān)警告
  • fallthrough:抑制與switch陳述式中遺漏break相關(guān)的警告
  • finally:抑制與未傳回finally區(qū)塊相關(guān)的警告
  • hiding:抑制與隱藏變數(shù)的區(qū)域變數(shù)相關(guān)的警告
  • incomplete-switch:抑制與switch陳述式(enum case)中遺漏項目相關(guān)的警告
  • javadoc:抑制與javadoc相關(guān)的警告
  • nls:抑制與非nls字串文字相關(guān)的警告
  • null:抑制與空值分析相關(guān)的警告
  • rawtypes:抑制與使用raw類型相關(guān)的警告
  • resource:抑制與使用Closeable類型的資源相關(guān)的警告
  • restriction:抑制與使用不建議或禁止參照相關(guān)的警告
  • serial:抑制與可序列化的類別遺漏serialVersionUID欄位相關(guān)的警告
  • static-access:抑制與靜態(tài)存取不正確相關(guān)的警告
  • static-method:抑制與可能宣告為static的方法相關(guān)的警告
  • super:抑制與置換方法相關(guān)但不含super呼叫的警告
  • synthetic-access:抑制與內(nèi)部類別的存取未最佳化相關(guān)的警告
  • sync-override:抑制因為置換同步方法而遺漏同步化的警告
  • unchecked:抑制與未檢查的作業(yè)相關(guān)的警告
  • unqualified-field-access:抑制與欄位存取不合格相關(guān)的警告
  • unused:抑制與未用的程式碼及停用的程式碼相關(guān)的警告

@SuppressWarnings 注解常見用法

使用場合

@SuppressWarnings注解,主要用于抑制編譯器報出的warning信息。

比如在idea中,如果某個方法的返回值沒有被使用,idea在語法檢查時,會把這個方法標(biāo)記為陰影狀態(tài),鼠標(biāo)懸停后會顯示對應(yīng)的原因。

如果此時我覺得這個返回值是必要的,只是暫時還沒用到,就可以加一個@SuppressWarnings注解,抑制警告信息。

當(dāng)然,不是每時每刻都需要解決warning。一般會在提交代碼前做一個檢查,例如用idea的gui提交到git倉庫時,默認(rèn)會對我們的修改做一個檢查,如果有warning信息會提示我們修改。

注解介紹

@SuppressWarnings注解可標(biāo)注于類、屬性、方法、參數(shù)構(gòu)造函數(shù)、局部變量上。

一般需滿足最小范圍原則,即如果警告信息來自于某個方法時,則將此注解標(biāo)注與該方法上,而不要標(biāo)注于范圍更大的類上。

@Target({TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE})
@Retention(RetentionPolicy.SOURCE)
public @interface SuppressWarnings {
    
    String[] value();
}

注解只有一個value值,用于接收warning的類型,下面列舉常見的value。

value常見取值

UnusedReturnValue

作用:抑制  “方法的返回值未被使用”警告

示例:

 
    @SuppressWarnings("UnusedReturnValue")    
    int batchInsert(@Param("lists") List<T>lists, Class<T>clazz);

unused

作用:抑制“方法或者變量未被使用”警告

示例:

    @SuppressWarnings("unused")
    public <T> String getByPrimaryKey(Object key, Class<T> clazz) {

unchecked

作用:抑制“未經(jīng)檢查的類型轉(zhuǎn)化”警告

示例:

all

作用:抑制所有的報錯

盡量遵守“最小范圍”原則,一般情況下不要用。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringBoot解決跨域請求攔截問題代碼實例

    SpringBoot解決跨域請求攔截問題代碼實例

    這篇文章主要介紹了SpringBoot解決跨域請求攔截代碼實例,在微服務(wù)開發(fā)中,一個系統(tǒng)包含多個微服務(wù),會存在跨域請求的場景。 本文講解SpringBoot解決跨域請求攔截的問題。,需要的朋友可以參考下
    2019-06-06
  • mvc架構(gòu)實現(xiàn)商品的購買(二)

    mvc架構(gòu)實現(xiàn)商品的購買(二)

    這篇文章主要為大家詳細(xì)介紹了mvc架構(gòu)實現(xiàn)商品購買功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • 實例講解Java并發(fā)編程之閉鎖

    實例講解Java并發(fā)編程之閉鎖

    這篇文章主要介紹了實例講解Java并發(fā)編程之閉鎖,閉鎖相當(dāng)于一扇門,在閉鎖到達(dá)結(jié)束狀態(tài)之前,這扇門一直是關(guān)閉著的,沒有任何線程可以通過,當(dāng)?shù)竭_(dá)結(jié)束狀態(tài)時,這扇門才會打開并容許所有線程通過,需要的朋友可以參考下
    2015-04-04
  • 詳解Spring MVC攔截器實現(xiàn)session控制

    詳解Spring MVC攔截器實現(xiàn)session控制

    這篇文章主要介紹了詳解Spring MVC攔截器實現(xiàn)session控制,使用session監(jiān)聽,重復(fù)登錄后,強制之前登錄的session過期。有興趣的可以了解一下。
    2017-01-01
  • springcloud組件技術(shù)分享(推薦)

    springcloud組件技術(shù)分享(推薦)

    Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的開發(fā)便利性簡化了分布式系統(tǒng)的開發(fā),比如服務(wù)發(fā)現(xiàn)、服務(wù)網(wǎng)關(guān)、服務(wù)路由、鏈路追蹤等。這篇文章主要介紹了springcloud組件技術(shù)分享,需要的朋友可以參考下
    2020-10-10
  • SpringBoot+RabbitMq具體使用的幾種姿勢

    SpringBoot+RabbitMq具體使用的幾種姿勢

    這篇文章主要介紹了SpringBoot+RabbitMq具體使用的幾種姿勢,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 關(guān)于Java集合框架Collection接口詳解

    關(guān)于Java集合框架Collection接口詳解

    這篇文章主要介紹了關(guān)于Java集合框架Collection接口詳解,Collection接口是Java集合框架中的基礎(chǔ)接口,定義了一些基本的集合操作,包括添加元素、刪除元素、遍歷集合等,需要的朋友可以參考下
    2023-05-05
  • Java基于ServletContextListener實現(xiàn)UDP監(jiān)聽

    Java基于ServletContextListener實現(xiàn)UDP監(jiān)聽

    這篇文章主要介紹了Java基于ServletContextListener實現(xiàn)UDP監(jiān)聽,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-12-12
  • redis分布式鎖的原理及代碼實例

    redis分布式鎖的原理及代碼實例

    這篇文章主要介紹了redis分布式鎖的原理及代碼實例,Redis作為一款高性能內(nèi)存數(shù)據(jù)庫,其提供了一種非常實用的分布式鎖解決方案,可以幫助開發(fā)人員輕松地實現(xiàn)分布式鎖功能,對于分布式系統(tǒng)的開發(fā)和維護(hù),具有非常大的實用價值,需要的朋友可以參考下
    2024-01-01
  • Spring Boot Admin 的使用詳解

    Spring Boot Admin 的使用詳解

    這篇文章主要介紹了Spring Boot Admin 的使用詳解,Spring Boot Admin 用于監(jiān)控基于 Spring Boot 的應(yīng)用,有興趣的可以了解一下
    2017-09-09

最新評論

密山市| 浙江省| 大余县| 顺义区| 安多县| 虎林市| 高安市| 宁陕县| 临颍县| 辽阳县| 垦利县| 古丈县| 辽宁省| 乌兰察布市| 惠水县| 沁水县| 大同县| 科技| 赣榆县| 徐水县| 木里| 米脂县| 沁源县| 望谟县| 达孜县| 布拖县| 灵山县| 泰顺县| 兴山县| 抚宁县| 淮滨县| 云南省| 鄂尔多斯市| 岚皋县| 工布江达县| 安宁市| 景宁| 读书| 米林县| 明水县| 伊宁市|