Heim  >  Artikel  >  Java  >  Ist es in Java möglich, eine Konstante nur mit dem Schlüsselwort final zu definieren?

Ist es in Java möglich, eine Konstante nur mit dem Schlüsselwort final zu definieren?

王林
王林nach vorne
2023-09-20 16:17:021328Durchsuche

Ist es in Java möglich, eine Konstante nur mit dem Schlüsselwort final zu definieren?

Eine konstante Variable ist eine Variable, deren Wert fest ist und von der nur eine Kopie im Programm existiert. Sobald Sie eine konstante Variable deklariert und ihr einen Wert zugewiesen haben, können Sie ihren Wert im gesamten Programm nicht mehr ändern.

Im Gegensatz zu anderen Sprachen unterstützt Java Konstanten nicht direkt. Sie können jedoch weiterhin eine Konstante erstellen, indem Sie eine Variable als statisch und final deklarieren.

Statisch – Sobald Sie eine statische Variable deklarieren, werden diese zur Kompilierungszeit in den Speicher geladen, d. h. es ist nur eine Kopie verfügbar.

Final – Sobald Sie eine finale Variable deklariert haben, kann ihr Wert nicht mehr geändert werden.

Sie können also eine Konstante in Java erstellen, indem Sie die Instanzvariable als statisch und endgültig deklarieren.

Beispiel

Demonstration

class Data {
   static final int integerConstant = 20;
}
public class ConstantsExample {
   public static void main(String args[]) {
      System.out.println("value of integerConstant: "+Data.integerConstant);
   }
}

Ausgabe

value of integerConstant: 20
value of stringConstant: hello
value of floatConstant: 1654.22
value of characterConstant: C

Konstante ohne statisches Schlüsselwort

Wenn Sie eine endgültige Variable ohne statisches Schlüsselwort erstellen, wird jedes Mal, wenn ein neues Objekt erstellt wird, eine separate Kopie davon erstellt, obwohl ihr Wert nicht änderbar ist Variable.

Beispiel

Betrachten Sie zum Beispiel das folgende Java-Programm:

Online-Demo

class Data {
   final int integerConstant = 20;
}
public class ConstantExample {
   public static void main(String args[]) {
      Data obj1 = new Data();
      System.out.println("value of integerConstant: "+obj1.integerConstant);
      Data obj2 = new Data();
      System.out.println("value of integerConstant: "+obj2.integerConstant);
   }
}

Ausgabe

value of integerConstant: 20
value of integerConstant: 20

Hier haben wir eine endgültige Variable erstellt und versucht, ihren Wert mithilfe von zwei Objekten zu drucken, obwohl der Wert der Variablen dazwischen liegt zwei sind in den Instanzen identisch, aber da wir für jede Instanz unterschiedliche Objekte verwenden, handelt es sich um Kopien der tatsächlichen Variablen.

Gemäß der Definition von Konstanten muss im gesamten Programm (Klasse) nur eine Kopie der Variablen vorhanden sein.

Um also per Definition eine Konstante zu erstellen, müssen Sie sie als statisch und endgültig deklarieren.

Das obige ist der detaillierte Inhalt vonIst es in Java möglich, eine Konstante nur mit dem Schlüsselwort final zu definieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen