1. 程式人生 > >忽略警告註解@SuppressWarnings詳解

忽略警告註解@SuppressWarnings詳解

作用:告訴編譯器忽略指定的警告,不用在編譯完成後出現警告資訊。
使用:
@SuppressWarnings(“”)
@SuppressWarnings({})
@SuppressWarnings(value={})

示例:

  • @SuppressWarnings(“unchecked”)

    告訴編譯器忽略 unchecked 警告資訊,如使用List,ArrayList等未進行引數化產生的警告資訊。

  • @SuppressWarnings(“serial”)

    如果編譯器出現這樣的警告資訊:The serializable class WmailCalendar does not declare a static final serialVersionUID field of type long

    使用這個註釋將警告資訊去掉。

  • @SuppressWarnings(“deprecation”)

    如果使用了使用@Deprecated註釋的方法,編譯器將出現警告資訊。
    使用這個註釋將警告資訊去掉。

  • @SuppressWarnings(“unchecked”, “deprecation”)

    告訴編譯器同時忽略unchecked和deprecation的警告資訊。

  • @SuppressWarnings(value={“unchecked”, “deprecation”})

    等同於@SuppressWarnings(“unchecked”, “deprecation”)

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(抑制確在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 (抑制沒被使用過的程式碼的警告)

相關推薦

忽略警告註解@SuppressWarnings

作用:告訴編譯器忽略指定的警告,不用在編譯完成後出現警告資訊。 使用: @SuppressWarnings(“”) @SuppressWarnings({}) @SuppressWarnings(value={}) 示例:

註解用法——@SuppressWarnings

作為一名有強迫症的程式設計師最見不得的事情之一就是程式裡有警告出現,還有一大困擾就是在eclipse IDE中,起碼前面有警告時會無法加入斷點。一般來講大多數警告是程式碼不規範或安全警告,這些警告基本都

@SuppressWarnings註解用法

今天來談談@SuppressWarnings註解的作用。 @SuppressWarnings 註解的作用是給編譯器一條指令,告訴它對被批註的程式碼元素內部的某些警告保持靜默。 @SuppressWarnings 批註允許您選擇性地取消特定程式碼段(即,類或方

SpringMVC原理及非註解配置

ges 控制器 sof 靈活 size 實現 query -c requests 1. Spring介紹   Spring MVC是Spring提供的一個強大而靈活的web框架。借助於註解,Spring MVC提供了幾乎是POJO的開發模式,使得控制器的開發和測試更加簡單

spring AOP解析之註解方式

parser 分享 pro asp mes aop log space spec 命名空間處理器是AopNamespaceHandler,我們可以看到這裏註冊了幾個解析器,第一個我們知道是xml形式的解析,接下來我們看AspectJAutoProxyBeanDefiniti

JPA註解“@GeneratedValue”

建立 說明 getprop ... ger div 創建 算法 運行 轉載 一、JPA通用策略生成器 通過annotation來映射hibernate實體的,基於annotation的hibernate主鍵標識為@Id, 其生成規則是由@GeneratedValue設定的

Java中的註解

oca 目的 它的 解包 log 重寫 XML variable ted 詳解Java中的註解 在Java中,註解(Annotation)引入始於Java5,用來描述Java代碼的元信息,通常情況下註解不會直接影響代碼的執行,盡管有些註解可以用來做到影響代碼執行。 註解

Spring Boot中使用MyBatis註解配置(1)

sql type .org 實體 sch 整合 PE 匯總 同傳 之前在Spring Boot中整合MyBatis時,采用了註解的配置方式,相信很多人還是比較喜歡這種優雅的方式的,也收到不少讀者朋友的反饋和問題,主要集中於針對各種場景下註解如何使用,下面就對幾種常見的情況舉

Java 基礎之--註解Annotation

註解 java 基礎 time span face 自定義註解 div ace rtu 自定義註解入門: public @interface Annotation01 { //set default value ""; String value() de

6. Spring:Java註解技術

6. Spring:Java註解技術詳解 自定義註解示例:https://blog.csdn.net/wangpengzhi19891223/article/details/78131137/ Java註解技術基本概念 Annotation是Java5開始引入的新特徵。中文

springboot中使用Mybatis註解配置

版權宣告:本文為博主原創文章,未經博主允許不得轉載。    https://blog.csdn.net/Winter_chen001/article/details/78623700 之前寫了關於Spring boot Mybatis 整合(註解版) 中使用了簡單的註解

Spring註解標籤@Autowired @Qualifier

@Autowired spring2.1中允許使用者通過@Autowired註解對Bean的屬性變數.屬性Setter方法以及建構函式進行標註,配合AutowiredAnnotationBeanProcessor完成Bean的自動配置。使用@Autowired註釋進行byType注入。 在a

spring bean註解使用

@Bean 的用法 @Bean是一個方法級別上的註解,主要用在@Configuration註解的類裡,也可以用在@Component註解的類裡。新增的bean的id為方法名 定義bean 下面是@Configuration裡的一個例子 @Configuration publi

Spring 註解@Value

一 配置方式 @value需要引數,這裡引數可以是兩種形式: @Value("#{configProperties['t1.msgname']}")或者@Value("${t1.msgname}"); 這兩形式,在配置上有什麼區別: 1、@Value("#{configPrope

ioc註解原理

一、@Autowired     作為一個spring開發者對@Autowired註解必定是非常瞭解了, 顧名思義自動裝配,應該是Spring會自動將我們標記為@Autowired的元素裝配好,與其猜測不如看看它的定義: @Target({ElementType.CONSTRUCTOR, 

Spring註解標籤@Autowired @Qualifier等 @Slf4j

 @Slf4j @Slf4j註解實現日誌輸出       自己寫日誌的時候,肯定需要: private final Logger logger = LoggerFactory.getLogger(LoggerTest.class);1每次寫新的類

springmvc常用註解標籤

1、@Controller 在SpringMVC 中,控制器Controller 負責處理由DispatcherServlet 分發的請求,它把使用者請求的資料經過業務處理層處理之後封裝成一個Model ,然後再把該Model 返回給對應的View 進行展示。在Spring

Spring Boot中使用MyBatis註解配置

   轉自翟永超 之前在Spring Boot中整合MyBatis時,採用了註解的配置方式,相信很多人還是比較喜歡這種優雅的方式的,也收到不少讀者朋友的反饋和問題,主要集中於針對各種場景下註解如何使用,下面就對幾種常見的情況舉例說明用法。 在做下面的示例之前,先準備一

Java註釋Override Deprecated SuppressWarnings

四、如何對註釋進行註釋     這一節的題目讀起來雖然有些繞口,但它所蘊涵的知識卻對設計更強大的java程式有很大幫助。 在上一節討論了自定義註釋,由此我們可知註釋在J2SE5.0中也和類、介面一樣。是程式中的一個基本的組成部分。既然可以對類、介面進行註釋,那麼當然也可以對註釋進行註釋。    使用普通註釋對

Spring 註解@Transactional

在service類前加上@Transactional,宣告這個service所有方法需要事務管理。每一個業務方法開始時都會開啟一個事務。 Spring預設情況下會對執行期例外(RunTimeException)進行事務回滾。這個例外是unchecked如果遇到checked意外