# Modifier Checks

## ModifierOrder

#### Description

Checks that the order of modifiers conforms to the suggestions in the Java Language specification, sections 8.1.1, 8.3.1 and 8.4.3. The correct order is:

1. public
2. protected
3. private
4. abstract
5. static
6. final
7. transient
8. volatile
9. synchronized
10. native
11. strictfp

#### Example

To configure the check:

    <module name="ModifierOrder"/>

#### Package

com.puppycrawl.tools.checkstyle.checks

#### Parent Module

TreeWalker

## RedundantModifier

Checks that

- method declarations in interfaces include neither the public modifier nor the abstract modifier (see the Java Language specification, section 9.4).
- all private method declarations and all method declarations in a final class do not include modifier final (see the Java Language specification, section 8.4.3.3).
- variable declarations in interfaces include none of the following modifiers: public, static, final (variables in interface definitions are constants and have these modifiers implicitly, see the Java Language specification, section 9.3).

#### Properties

name | description | type | default value
--- | --- | --- | ---
tokens | tokens to check | subset of tokens METHOD_DEF, VARIABLE_DEF | METHOD_DEF, VARIABLE_DEF

#### Example

To configure the check:

    <module name="RedundantModifier"/>

To configure the check to check only methods and not variables:

    <module name="RedundantModifier">
      <property name="tokens" value="METHOD_DEF"/>
    </module>

#### Package

com.puppycrawl.tools.checkstyle.checks

#### Parent Module

TreeWalker

Back to the Checkstyle Home Page

Copyright © 2002-2003 Oliver Burn. All rights Reserved.