Checkstyle – Coding


コーディングのチェックです。

※Checkstyle 4.3に対応しています。


ArrayTrailingComma

配列を初期化した際、最後の要素の後ろにカンマがないかチェックをします。


AvoidInlineConditionals

インライン条件文が使用されていないかチェックをします。


CovariantEquals

equals(java.lang.Object)と異なる引数を持つequalsメソッドがないかチェックします。


DoubleCheckedLocking

"double-checked locking"Idiomを使用していないかチェックします。


EmptyStatement

空行がないかチェックします。


EqualsHashCode

equals()をオーバーライドしているクラスがhashCode()をオーバーライドしているかチェックします。


FinalLocalVariable

変更されないローカル変数がfinalで宣言されているかチェックします。

Properties

◆ tokens

チェック対象を指定します。

デフォルト値はVARIABLE_DEFです。


HiddenField

同じクラスの中で、フィールド名と同じローカル変数やパラメータがないかチェックします。

Properties

◆ tokens

チェック対象を指定します。

デフォルト値はPARAMETER_DEF,VARIABLE_DEFです。

◆ ignoreFormat

チェック対象外とする名前を正規表現で指定します。

デフォルト値は空です。

◆ ignoreConstructorParameter

コンストラクタのパラメータをチェック対象とするかどうかを指定します。

デフォルト値はfalseです。

◆ ignoreSetter

Setterのパラメータをチェック対象とするかどうかを指定します。

デフォルト値はfalseです。

◆ ignoreAbstractMethods

abstractメソッドのパラメータをチェック対象とするかどうかを指定します。

デフォルト値はfalseです。


IllegalInstantiation

ファクトリメソッドを使用してインスタンスを生成した方がよいクラスがないかチェックします。

Properties

◆ classes

インスタンス化すべきでないクラス名を指定します。

デフォルト値は空です。


IllegalToken

不正なトークンがないかチェックします。

Properties

◆ tokens

チェック対象を指定します。

デフォルト値はLITERAL_SWITCH,POST_INC,POST_DECです。


IllegalTokenText

不正なトークンテキストがないかチェックします。

Properties

◆ tokens

チェック対象を指定します。

デフォルト値は空です。

◆ format

不正なパターンを正規表現で指定します。

デフォルト値は^$です。

◆ ignoreCase

大文字小文字を区別するかどうかを指定します。

デフォルト値はfalseです。

◆ message

チェックエラー時のメッセージを指定します。

デフォルト値は""(空文字)です。


InnerAssignment

副式の内部で String s = Integer.toString(i = 2); のように代入していないかチェックします。

Properties

◆ tokens

チェック対象を指定します。

デフォルト値は全てです。


MagicNumber

マジックナンバーがないかチェックします。

Properties

◆ tokens

チェック対象を指定します。

デフォルト値は全てです。

◆ ignoreNumbers

マジックナンバーとしない数値を指定します。

デフォルト値は-1,0,1,2です。


MissingSwitchDefault

switchステートメントでdefaultが定義されているかチェックします。


ModifiedControlVariable

ブロック内でループ制御変数が変更されていないかチェックします。


RedundantThrows

冗長なthrows句がないかチェックします。

Properties

◆ allowUnchecked

throws句で非検査例外を許可するかどうかを指定します。

デフォルト値はfalseです。

◆ allowSubclasses

throws句で他に宣言されている例外のサブクラスを許可するかどうかを指定します。

デフォルト値はfalseです。

◆ logLoadErrors

デフォルト値はfalseです。

◆ suppressLoadErrors

デフォルト値はfalseです。


SimplifyBooleanExpression

無駄に複雑なboolean演算がないかチェックします。


SimplifyBooleanReturn

無駄に複雑なbooleanのreturn句がないかチェックします。


StringLiteralEquality

文字列を比較する際に==や!=が使われていないかチェックします。


NestedIfDepth

if〜elseブロックのネストの深さをチェックします。

Properties

◆ max

ネストの深さの最大値を指定します。

デフォルト値は1です。


NestedTryDepth

tryブロックのネストの深さをチェックします。

Properties

◆ max

ネストの深さの最大値を指定します。

デフォルト値は1です。


SuperClone

オーバーライドしたclone()メソッドでsuper.clone()を呼び出しているかチェックします。


SuperFinalize

オーバーライドしたfinalize()メソッドでsuper.finalize()を呼び出しているかチェックします。


IllegalCatch

不適切なcatch句(java.lang.Exception,java.lang.Error,java.lang.RuntimeExceptionなど)がないかチェックします。

Properties

◆ illegalClassNames

チェック対象の例外を指定します。

デフォルト値はjava.lang.Exception,java.lang.Throwable,java.lang.RuntimeExceptionです。


IllegalThrows

不適切なthrows句(java.lang.Exception,java.lang.Error,java.lang.RuntimeExceptionなど)がないかチェックします。

Properties

◆ illegalClassNames

チェック対象の例外を指定します。

デフォルト値はjava.lang.Exception,java.lang.Throwable,java.lang.RuntimeExceptionです。


PackageDeclaration

パッケージが宣言されているかチェックします。


JUnitTestCase

JUnitのsetUp(),tearDown(),suite()メソッドの名前、引数、戻り値などがJUnitフレームワークに則っているかチェックします。


ReturnCount

1メソッド内のreturn句の数をチェックします。

Properties

◆ max

1メソッド内のreturn句の最大数を指定します。

デフォルト値は2です。

◆ format

チェック対象外とするメソッド名を正規表現で指定します。

デフォルト値は^equals$です。


IllegalType

特定のクラスが変数宣言、戻り値、パラメータの型として使用されていないかチェックします。

Properties

◆ tokens

チェック対象を指定します。

デフォルト値はPARAMETER_DEF,VARIABLE_DEF,METHOD_DEFです。

◆ illegalClassNames

変数宣言、戻り値、パラメータの型として使用すべきではないクラスを指定します。

デフォルト値はjava.util.GregorianCalendar、java.util.Hashtable、java.util.HashSet,java.util.HashMap、java.util.ArrayList、java.util.LinkedList、java.util.LinkedHashMap、java.util.LinkedHashSet、java.util.TreeSet、java.util.TreeMap、java.util.Vectorです。

◆ legalAbstractClassNames

タイプとして使用する抽象クラスを指定します。

デフォルト値は""です。

◆ ignoredMethodNames

チェック対象外のメソッド名を指定します。

デフォルト値はgetInitialContext,getEnvironmentです。

◆ format

チェック対象のクラス名を正規表現で指定します。

デフォルト値は^(.*[¥¥.])?Abstract.*$です。


DeclarationOrder

クラス内の定義順をチェックします。

1.クラス変数(public⇒protected⇒package⇒private)

2.インスタンス変数(public⇒protected⇒package⇒private)

3.コンストラクタ

4.メソッド


ParameterAssignment

パラメータへ代入していないかチェックします。


ExplicitInitialization

クラスやオブジェクトのメンバが、明示的にデフォルト値(オブジェクトはnull、数値型とcharはゼロ、booleanはfalse)で初期化されていないかチェックします。


DefaultComesLast

switchステートメントで、default句が他のすべてのcase句の後にあるかチェックします。


MissingCtor

抽象クラス以外のクラスでデフォルトコンストラクタが定義されているかチェックします。


FallThrough

break句がないswitchステートメントがないかチェックします。

Properties

◆ checkLastCaseGroup

最後のcase句をチェックするかどうかを指定します。

デフォルト値はfalseです。

◆ reliefPattern

デフォルト値はfallthru|falls? ?through です。


MultipleStringLiterals

同じ文字列が複数ないかチェックします。

Properties

◆ allowedDuplicates

許可する回数を指定します。

デフォルト値は1です。

◆ ignoreStringsRegexp

チェック対象外の文字列を正規表現で指定します。

デフォルト値は^$です。


MultipleVariableDeclarations

1行で複数の変数が宣言されていないかチェックします。


RequireThis

明示的にthisが付けられているかチェックします。

Properties

◆ checkFields

フィールドをチェック対象とするかどうかを指定します。

デフォルト値はtrueです。

◆ checkMethods

メソッドをチェック対象とするかどうかを指定します。

デフォルト値はtrueです。


UnnecessaryParentheses

不要な括弧がないかチェックします。

関連記事

  1. コメント 0

  1. トラックバック 0

return top