What is @SuppressWarnings Annotation in Java
SuppressWarnings is a Standard annotation for suppressing various warnings in Java. This functionality was included
as a standard annotation from Java SE 5.
This annotation type gives the controling facility to programers on the warnings which are issued by the Java compiler. This SuppressWarnings
intake a single element as an argument, but that is a array of String. The definition says, it can be use as like this
@SuppressWarnings(value = {S1, ... , Sk})
After adding the @SuppressWarnings annotation.
Here Java compiler won't report any warning identified by one of S1, ... , Sk, when one of this waring would have been generated as a result of the annotated declaration or any of its parts.
What are the Valid Warning Types?
In the Sun JDK 1.5:
* all - This will suppress all warnings. @SuppressWarnings("all")
* deprecation - This will suppress warnings from using deprecated code@SuppressWarnings("deprecation")
* unchecked - This will suppress warnings from an unchecked call or an unchecked cast@SuppressWarnings("unchecked")
* fallthrough - This will suppress warnings if a switch falls through without finding a valid case (and no default). @SuppressWarnings("fallthrough")
* path - This will suppress warnings if it shows any path warings. @SuppressWarnings("path")
* serial - This will suppress warnings if a Serializable class does not define a serialVersionUID. @SuppressWarnings("serial")
* finally - This will suppress warnings from return within a finally (which will ignore return with the try). @SuppressWarnings("finally")
And Sun JDK 1.6 adds:
* cast
- This will suppress all cast warings. @SuppressWarnings("cast")
* divzero - suppress warnings if integer divide by zero is detected. @SuppressWarnings("divzero")
* empty - @SuppressWarnings("empty")
* overrides - @SuppressWarnings("overrides")
* none - @SuppressWarnings("none")
IDEs and static analysis tools . These values correspond to specific static analysis checks performed by the IDE.
Eclipse IDE also typically support a large number of other possible values for @SuppressWarnings.
* all - @SuppressWarnings("all") suppress all warnings
* boxing - @SuppressWarnings("boxing") suppress warnings relative to boxing/unboxing operations
* cast - @SuppressWarnings("cast") suppress warnings relative to cast operations
* dep-ann - @SuppressWarnings("dep-ann") suppress warnings relative to deprecated annotation
* deprecation - @SuppressWarnings("deprecation") suppress warnings relative to deprecation
* fallthrough - @SuppressWarnings("fallthrough") suppress warnings relative to missing breaks in switch statements
* finally - @SuppressWarnings("finally") suppress warnings relative to finally block that don't return
* hiding - @SuppressWarnings("hiding") suppress warnings relative to locals that hide variable
* incomplete-switch - @SuppressWarnings("incomplete-switch") suppress warnings relative to missing entries in a switch statement (enum case)
* nls - @SuppressWarnings("nls") suppress warnings relative to non-nls string literals
* null - @SuppressWarnings("null") suppress warnings relative to null analysis
* restriction - @SuppressWarnings("restriction") suppress warnings relative to usage of discouraged or forbidden references
* serial - @SuppressWarnings("serial") suppress warnings relative to missing serialVersionUID field for a serializable class
* static-access - @SuppressWarnings("static-access") suppress warnings relative to incorrect static access
* synthetic-access - @SuppressWarnings("synthetic-access") suppress warnings relative to unoptimized access from inner classes
* unchecked - @SuppressWarnings("unchecked") suppress warnings relative to unchecked operations
* unqualified-field-access - @SuppressWarnings("unqualified-field-access") suppress warnings relative to field access unqualified
v
* unused - @SuppressWarnings("unused") suppress warnings relative to unused code
This Articles was posted on 2:57 AMMonday, June 7, 2010
|
Labels:
Java,
Programming,
Tech
|
0 comments:
Post a Comment