PMD : EmptyIfStmt
CheckStyle : EmptyBlock
FindBugs : UCF: Useless control flow in method
ifブロックが空。
以前記述してあったロジックをコメントアウトした場合などによく起こります。
if (x == 0) {
// v = 10;
}
このような場合、ifブロック毎コメントアウトするのが良い方法です。
そして、一定期間が過ぎたらコメントアウトではなく完全に削除しましょう。
ソース管理システムを使えば過去の履歴はいつでも参照することが出来ます。
PMD : EmptyWhileStmt
CheckStyle : EmptyBlock
空のifブロック と同様です。
PMD : EmptySwitchStatements
CheckStyle : EmptyBlock
空のifブロック と同様です。
デバッグ時などでこういう事をするかもしれませんが、
リリース時のコードには含めないようにしましょう。
if (true) {
// 常にこのブロックは実行される。if文は必要無い
}
PMD : UnconditionalIfStatement
空のsynchronizedブロック。
PMD : EmptySynchronizedBlock
FindBugs : ESync: Empty synchronized block
空のクラス初期化ブロック。
PMD : EmptyStaticInitializer
finalで定義されたクラスは、暗黙的に全てのメソッドがfinalになります。
よって、メソッドにわざわざfinalを記述する必要はありません。
PMD : UnnecessaryFinalModifier
インターフェイス内で定義されたメソッドは暗黙的に public abstract になります。
また、変数は暗黙的に public static final になります。
よって、これらの識別子を明示的に宣言する必要はありません。
PMD : UnusedModifier
instanceof 演算子は、nullインスタンスに対応しています。
つまり、
if (x != null && x instanceof String) {...}
↑このような処理は不要です。
if (x instanceof String) {...}
↑こうしましょう。
PMD : SimplifyConditional