Konstanten vs Checkstyle Typ: MemberNameCheck

Hein_nieH

Bekanntes Mitglied
Hallo Freunde der Bits und Bytes,

ich habe eine philosophische Frage zum Java Code.
Entsprechend der allg. gültigen Conventionen werden Konstanten groß geschrieben.

Beim checkstyle wird bei groß geschriebenen Konstanten jedoch eine MemberNameCheck-Warnung angezeigt,
da im Regeex-Ausdruck Variablen mit zwei Kleinbuchstaben beginnen sollen.
Hierzu meine Fragen:
Weiss jemand, ob checkstyle neben dem Variablennamen auch den Modifier final auswertet?
Wie muss die checkstyle.xml Definitionsdatei geändert werden, damit Konsatnen grundsätzlich in Großschreibung akzeptiert werden.

Ich habe im Aufbau von checkstyle.xml zu wenig Ahnung, trotz Studium der Doku.

Kann mir jemand weiterhelfen???

Gruss Hein_nieH
 

httpdigest

Top Contributor
Also, "Konstanten" im Sinne von "static final" sollten immer komplett großgeschrieben sein, mit Unterstrichen zum Worttrennen. Nicht nur der erste Buchstabe groß, also:
Java:
public static final int MEINE_KONSTANTE_FUER_ETWAS = 3;
 

Hein_nieH

Bekanntes Mitglied
Hallo,

das Problem ist: Warum zeigt checkstyle eine MemberNameCheck-Warnung bei Konstanten an.
Wie muss die checkstyle-Definition geändert werden, damit diese Warnung bei Konstanten nicht mehr auftritt.

Gruss Hein_nieH
 

KonradN

Super-Moderator
Mitarbeiter
Das findet sich doch alles hier:

Aber zeig einmal den genauen Code, der angemeckert wurde. Du hast da ganz offensichtlich etwas nicht static final aber Du hast es in uppercase benannt. Ohne static final zieht aber die Regel MemberName und nicht ConstantName.

Und die Beschreibung bei ConstantName ist auch mehr wie deutlich:
A constant is a static and final field or an interface/annotation field, except serialVersionUID and serialPersistentFields.
 

Hein_nieH

Bekanntes Mitglied
Moinsen,

danke für die Antwort. Da habe ich tatsächlich das Schlüsselwort "static" vergessen.
Hätte mich auch gewundert, wenn es am checkstyle liegen würde :)

Gruss Hein_nieH
 

Ähnliche Java Themen

Neue Themen


Oben