
resources.report.rules.pmd.UnnecessaryFinalModifier.html Maven / Gradle / Ivy
UnnecessaryFinalModifier
UnnecessaryFinalModifier
When a class has the final modifier, all the methods are automatically final and do not need to be tagged as such.
//ClassOrInterfaceDeclaration[@Final='true' and @Interface='false']
/ClassOrInterfaceBody/ClassOrInterfaceBodyDeclaration
[count(./Annotation/MarkerAnnotation/Name[@Image='SafeVarargs' or @Image='java.lang.SafeVarargs']) = 0]
/MethodDeclaration[@Final='true']
Example(s):
public final class Foo {
// This final modifier is not necessary, since the class is final
// and thus, all methods are final
private final void foo() {
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy