Class UnnecessarySemicolonAfterTypeMemberDeclarationCheck

  • All Implemented Interfaces:
    Configurable, Contextualizable

    public final class UnnecessarySemicolonAfterTypeMemberDeclarationCheck
    extends AbstractCheck

    Checks if unnecessary semicolon is used after type member declaration.

    This check is not applicable to empty statements (unnecessary semicolons inside methods or init blocks), EmptyStatement is responsible for it.

    To configure the check:

     <module name="UnnecessarySemicolonAfterTypeMemberDeclaration"/>

    Results in following:

     class A {
         ; // violation, standalone semicolon
         {}; // violation, extra semicolon after init block
         static {}; // violation, extra semicolon after static init block
         A(){}; // violation, extra semicolon after constructor definition
         void method() {}; // violation, extra semicolon after method definition
         int field = 10;; // violation, extra semicolon after field declaration
             ; // no violation, it is empty statement inside init block
         static {
             ; // no violation, it is empty statement inside static init block
         void anotherMethod() {
             ; // no violation, it is empty statement
             if(true); // no violation, it is empty statement

    Parent is

    Violation Message Keys:

    • unnecessary.semicolon