Einführung in die Definition von Konstanten in Java im Rahmen der Lehre des Programmierens mit der Programmiersprache Java. [] (Konstante, const, Definition von Konstanten), Lektion, Seite 721208
https://www.purl.org/stefan_ram/pub/java_konstanten_de (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram

Konstantendeklarationen in Java

Die Definition einer Konstante wird in Java als Deklaration einer Konstante bezeichnet.

Konzeptuell gesehen wird durch eine Konstantendeklaration  ein Bezeichner für einen Wert  vereinbart.

Die folgenden Produktionen sind gegenüber der Sprachdefinition vereinfacht oder geringfügig verändert worden.

ConstantDeclaration 〉 ::=
"final" ["static"] 〈Type 〉 〈VariableDeclarators  ";".
Type 〉 ::=
"boolean" | "int" | "double".
VariableDeclarators 〉 ::=
VariableDeclarator 〉 |
VariableDeclarators  "," 〈VariableDeclarator 〉.
VariableDeclarator 〉 ::=
Identifier  ["=" 〈Expression 〉].

Eine Konstantendeklaration besteht also aus einem optionalen Modifikator "static" und einer Typangabe Type , der ein Variablen-Deklarator VariableDeclarator  folgt oder mehrere durch Komma getrennte Konstantendeklaratoren VariableDeclarator  folgen. Die Konstantendeklaration endet schließlich mit einem Semikolon.

(Der Gebrauch von „Variablen -Deklarator“ für den Deklarator einer Konstanten ist hier kein Fehler, da die meisten Konstanten in Java  als mit dem Modifizierer "final" gekennzeichnete sogenannte „Variablen“ auftreten. Nur in Schnittstellendeklarationen treten spezielle Konstantendeklaratoren auf, bei denen das Gleichheitszeichen nicht entfallen kann.)

Der optionale Modifizierer "static" und die Typangabe Type  beziehen sich auf alle folgenden Variablen-Deklaratoren. Der Konstantendeklarator Identifier  "=" 〈Expression  legt den Bezeichner Identifier  der Konstanten fest und bestimmt ihren Wert als Wert des dem Gleichheitszeichen "=" folgenden Ausdrucks Expression .

Durch "final int v = 7;" wird beispielsweise ein Bezeichner (eine Konstante) "v" mit dem Typ "int" und dem Wert "7" vereinbart.

Eine Deklaration des Bezeichners "v"
       .------------- <Type> 
| .------- <VariableDeclarator> 
| | 
--- ----- 
final int v = 7;

Initialisierungen

Eine Initialisierung  einer Konstanten kann durch den Variablen-Initialisierer des Variablen-Deklarators der Konstanten geschehen.

Konstantendefinition mit Initialisierer
          .------- <Identifier> 
| .--- <Expression> 
| | 
- -  
final int v = 9;

Durch die Initialisierung wird der Wert  der Konstante festgelegt.

Allerdings muß die Initialisierung einer Konstanten nicht immer durch einen Variablen-Deklarator erfolgen, da es dafür auch noch andere Möglichkeiten gibt. Daher können das Gleichheitszeichen und der Ausdruck auch weggelassen werden.

Konstantenverwendungen

Der Name einer Konstanten steht für den Wert  der Konstanten.

Daher ist die Wirkung der Auswertung des Ausdrucks "System.out.print( v )" mit einer int-Konstante "v" die Ausgabe einer Darstellung des int -Wertes der int -Konstante "v". Der Ausdruck "v + 1" ist die Summe dieses Wertes von "v" und "1".

Mehrere Deklaratoren in einer Deklaration *

Es können mehrere Variablen-Deklaratoren durch Komma getrennt und (Feld-Modifizierern zusammen mit) einem Typ zugeordnet werden.

Eine Deklaration
       .----------------- <Type> 
| .------------ <VariableDeclarator> 
| | .---- <VariableDeclarator> 
| | | 
--- ----- ------ 
final int v = 2, w = 91;

Die Deklaration "final int v = 2, w = 91;" hat die gleichen Folgen, wie die Folge der Deklarationen "final int v = 2; final int w = 91;".

Da die Verwendung mehrerer Variablen-Deklaratoren in einer Felddeklaration manchmal zu Mißverständnissen führen kann, sind im Zweifel mehrere Deklarationen mit nur jeweils einem Variablen-Deklarator vorzuziehen.

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram721208 stefan_ram:721208 slrprd, slrprdqxx, slrprddoc, slrprd721208, slrprddef721208, PbclevtugFgrsnaEnz

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten.
https://www.purl.org/stefan_ram/pub/java_konstanten_de