Java忽略警告注解@SuppressWarnings
Posted 一个抓手
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java忽略警告注解@SuppressWarnings相关的知识,希望对你有一定的参考价值。
// 忽略全部类型的警告
@SuppressWarnings("all")
// 忽略未检查的转化,例如集合没有指定类型的警告
@SuppressWarnings("unchecked")
// 忽略未使用的变量的警告
@SuppressWarnings("unused")
// 忽略与使用Closeable类型资源相关的警告
@SuppressWarnings("resource")
// 忽略在类路径,原文件路径中有不存在的路径的警告
@SuppressWarnings("path")
// 忽略使用了某些不赞成使用的类和方法的警告
@SuppressWarnings("deprecation")
// 忽略switch语句执行到底没有break关键字的警告
@SuppressWarnings("fallthrough")
// 忽略某类实现Serializable,但是没有定义serialVersionUID的警告
@SuppressWarnings("serial")
// 忽略没有传递带有泛型的参数的警告
@SuppressWarnings("rawtypes")
源码
package java.lang;
import java.lang.annotation.*;
import static java.lang.annotation.ElementType.*;
/**
* Indicates that the named compiler warnings should be suppressed in the
* annotated element (and in all program elements contained in the annotated
* element). Note that the set of warnings suppressed in a given element is
* a superset of the warnings suppressed in all containing elements. For
* example, if you annotate a class to suppress one warning and annotate a
* method to suppress another, both warnings will be suppressed in the method.
*
* <p>As a matter of style, programmers should always use this annotation
* on the most deeply nested element where it is effective. If you want to
* suppress a warning in a particular method, you should annotate that
* method rather than its class.
*
* @author Josh Bloch
* @since 1.5
* @jls 4.8 Raw Types
* @jls 4.12.2 Variables of Reference Type
* @jls 5.1.9 Unchecked Conversion
* @jls 5.5.2 Checked Casts and Unchecked Casts
* @jls 9.6.3.5 @SuppressWarnings
*/
@Target({TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE})
@Retention(RetentionPolicy.SOURCE)
public @interface SuppressWarnings {
/**
* The set of warnings that are to be suppressed by the compiler in the
* annotated element. Duplicate names are permitted. The second and
* successive occurrences of a name are ignored. The presence of
* unrecognized warning names is <i>not</i> an error: Compilers must
* ignore any warning names they do not recognize. They are, however,
* free to emit a warning if an annotation contains an unrecognized
* warning name.
*
* <p> The string {@code "unchecked"} is used to suppress
* unchecked warnings. Compiler vendors should document the
* additional warning names they support in conjunction with this
* annotation type. They are encouraged to cooperate to ensure
* that the same names work across multiple compilers.
* @return the set of warnings to be suppressed
*/
String[] value();
}
以上是关于Java忽略警告注解@SuppressWarnings的主要内容,如果未能解决你的问题,请参考以下文章