OOAOM - Order Of Appearance Of Modifiers

Checks for correct ordering of modifiers.
For classes: visibility (public, protected or private), abstract, static, final.
For attributes: visibility (public, protected or private), static, final, transient, volatile.
For operations: visibility (public, protected or private), abstract, static, final, synchronized, native

Wrong

`final public class OOAOM {
public static final int attr1;
static public int attr2;
}`

Tip: Change the order of modifiers

Right

`public final class OOAOM {
public static final int attr1;
public static int attr2;
}`