@SuppressWarnings是什么意思?

@SuppressWarnings的意思是:压制警告,即去除警告 。

  • @SuppressWarnings 的简介:

  1. 是J2SE 5.0中标准的Annotation之一。

  2. 可以标注在类、字段、方法、参数、构造方法,以及局部变量上。

  • 作用:告诉编译器忽略指定的警告,不用在编译完成后出现警告信息。

     

  • 使用:

  1. @SuppressWarnings(“”).

  2. @SuppressWarnings({}).

  3. @SuppressWarnings(value={}).

  • 示例:

  1. ·   @SuppressWarnings("unchecked")

    告诉编译器忽略 unchecked 警告信息,如使用List,ArrayList等未进行参数化产生的警告信息。

  2. ·   @SuppressWarnings("serial")

    如果编译器出现这样的警告信息:The serializable class WmailCalendar does not declare a static final serialVersionUID field of type long

    使用这个注释将警告信息去掉。

  3. ·   @SuppressWarnings("deprecation")

    如果使用了使用@Deprecated注释的方法,编译器将出现警告信息。使用这个注释将警告信息去掉。

  4. ·   @SuppressWarnings("unchecked", "deprecation")

    告诉编译器同时忽略unchecked和deprecation的警告信息。

  5. ·   @SuppressWarnings(value={"unchecked", "deprecation"})

    等同于@SuppressWarnings("unchecked", "deprecation")

部分常用参数:

@SuppressWarnings(“unchecked”)//未检查的转化,如集合没有指定类型

@SuppressWarnings(“unused”)  //未使用的变量

@SuppressWarnings(“resource”)  //有泛型未指定类型

@SuppressWarnings(“path”)  //在类路径,原文件路径中有不存在的路径

@SuppressWarnings("deprecation ")  //使用了某些不赞成使用的类和方法

@SuppressWarnings("fallthrough") //switch语句执行到底没有break关键字

@SuppressWarnings("serial")//某类实现Serializable 但是没有定义serialVersionUID 这个需要但是不必须的字段 

@SuppressWarnings("rawtypes") //没有传递带有泛型的参数

@SuppressWarnings("all") //全部类型的警告 

补充参数汇总:

  • 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是什么意思?)