Consider a private method which is called from JNI and not used otherwise, generating a compiler warning about an unused method:
private void someMethodCalledOnlyFromJNI() { // WARNING: method is never used
// ....
}
This is some legacy code in Java 1.4 – so no dice on @SuppressWarnings.
What hack would you use to suppress this compiler warning?
Edit: Obviously this is just a warning and it can easily be ignored. But, personally, I hate warnings in my code just as much as I don’t want to see errors in it. AFAIC – my code should have 0 warnings, it might be an exaggeration, but I am very pedantic about this.
Just as an example, someone might see this function, not know it is used from JNI, and simply delete it.
protected(and add a comment for the reason why) – bearableWindows > Preferences > Java > Compiler > Errors/Warnings) – not preferableAs per your update: having 0 warnings is not a goal you should set. The number of warnings depends on the settings, so if you don’t all have unified IDEs, this number will vary. And then you can add checkstyle / PMD to report warnings as well – then you’ll have even more. The reasonable behaviour is to have a warnings treshold.
If you don’t want anyone to delete this method, just add a comment: