Checkstyle Javaルール

CheckstyleのJavaルールについて1つずつまとめます

OneTopLevelClass

CheckStyle公式ドキュメント

検証環境

Checkstyleバージョン:10.3.3
Javaバージョン:17


チェック概要

チェック追加バージョン
Checkstyle 5.8

トップレベルのクラス、インターフェース、enumアノテーションがそれ自身のソースファイルにただ1つ存在することをチェックする。
ファイルにpublicなクラス、インターフェース、enumアノテーションが含まれていない場合、トップレベルの型はファイルの最初の型となる。
1つのソースファイルに複数のトップレベルなクラスが定義されていないこと。

設定+チェック実行結果

設定ファイル記述方法

<module name="Checker">
    <module name="TreeWalker">
        <module name="OneTopLevelClass"/>
    </module>
</module>

チェック実行例

ソースファイルFoo.javaに以下の記述があった場合

// OK
public class Foo {
  // methods
}

// NG Foo2.javaに記述するべき
class Foo2 {
  // methods
}