Java


JAVA.ID.STYLE : Naming Style Violation (Java)

要旨

A class, method, field, or parameter is named in a non-standard way.

Class and method names in Java are traditionally written in a standard way, based on camelization of words. The names of classes start with a capital letter, while the names of fields and methods normally start with a small letter. In particular, a method should not be called as the same class where it is defined, since it might be misunderstood as a constructor. Moreover, a class should not be named as one of its superclasses or superinterfaces, up to the package name, since this can introduce confusion and, potentially, bugs.

プロパティ

クラス名 Naming Style Violation (Java)
日本語クラス名 Naming Style Violation (Java)
クラス分類 スタイル (style)
ニーモニック JAVA.ID.STYLE
カテゴリー
CWE CWE:710 Improper Adherence to Coding Standards
対応言語 Java で利用可能です。
有効/無効設定 このワーニングクラスのチェックはデフォルトで無効になっています。チェックを有効にするにはプロジェクト設定ファイル (configuration file)に以下の WARNING_FILTER ルールを追加してください。
WARNING_FILTER += allow class="Naming Style Violation (Java)"

// package1/BadNames.java
package package1;

public class BadNames {

  public final static String TAG = "BADNAMES";

  public final int Value;                         /* "Naming Style Violation (Java)" warning issued here
                                                   * - field name is capitalized
                                                   */

  public BadNames(int x) {
      Value = x;
  }

  public void Test() {                            /* "Naming Style Violation (Java)" warning issued here
                                                   * - method name is capitalized
                                                   */
      System.out.println(TAG + ": hello");
      new BadNames(45);
  }

  public void BadNames() {                        /* "Naming Style Violation (Java)" warning issued here
                                                   * - non-constructor method name matches class name
                                                   * - method name is capitalized
                                                   */
      System.out.println(TAG + ": hello");
  }

  private class inner {                           /* "Naming Style Violation (Java)" warning issued here
                                                   * - inner class name is not capitalized
                                                   */
  }
}
// package2/BadNames.java
package package2;

public class BadNames extends package1.BadNames { /* "Naming Style Violation (Java)" warning issued here
                                                   * - class has same simple name as its superclass
                                                   */

  public BadNames(int x) {
      super(x);
  }
}

解決法

Modify the name in order to comply to the standard. In particular, avoid methods or fields starting with a capital letter, unless they are constants.

関連のある設定ファイルパラメータ

設定ファイルの以下のパラメータがこのワーニングクラスのチェックに影響します。