How to suppress Java compiler warnings for specific functions

50,570

Solution 1

If you really, really must do this, and you are sure you are not making a mistake, check out the @SuppressWarnings annotation. I suppose in your case you need

@SuppressWarnings("fallthrough")

Solution 2

Is the annotation @SuppressWarnings (javadoc) what you are looking for?

For example:

@SuppressWarnings("unchecked")
public void someMethod(...) {
    ...
}

Solution 3

To complete other answer about SuppressWarnings:

@SuppressWarnings("fallthrough")

Try to supress all the fall-through warning at the compiler level is a bad thing: as you've explained, the cases where you need to pass through the warning are clearly identified. Thus, it should be explicitly written in the code (the @SuppressWarnings("fallthrough") annotation with an optionnal comment is welcome). Doing so, you'll still have the fall-through warning if you really forget a break somewhere elese in your code.

Solution 4

You could create a structure of 'if' statements in place of the switch. Might not be as visually pleasing however neither is warning supression.

Share:
50,570
Ron Tuffin
Author by

Ron Tuffin

Husband, Father and Science geek. I ask the questions that you think are too stupid to ask :)

Updated on May 13, 2020

Comments

  • Ron Tuffin
    Ron Tuffin almost 4 years

    We are always taught to make sure we use a break in switch statements to avoid fall-through.

    The Java compiler warns about these situations to help us not make trivial (but drastic) errors.

    I have, however, used case fall-through as a feature (we don't have to get into it here, but it provides a very elegant solution).

    However the compiler spits out massive amounts of warnings that may obscure warnings that I need to know about. I know how I can change the compiler to ignore ALL fall-through warnings, but I would like to implement this on a method-by-method basis to avoid missing a place where I did not intend for fall-through to happen.

    Any Ideas?