さらに移動する前に、まず静的変数と最終変数をお読みくださいすることをお勧めします。 この記事では、静的変数でfinalキーワードを使用する方法について説明します。 この記事では、javaで静的な最終変数を初期化する方法を説明します。 変数は、javaでは静的で最終的なものにすることができます。
ここでは、このトピックをカバーする記事の表の内容です。
1. Javaの静的最終変数とは何ですか?
2. 静的な最終変数を宣言するには?
3. 静的最終変数の初期化?
i)宣言中の初期化?
ii)静的ブロック内の初期化?
4. Javaの静的な空白の最終変数とは何ですか?
5. 静的な空白の最終変数を初期化するためのルール?
6. 実生活の例?p>
javaの静的な最終変数は何ですか?
私たちのほとんどはすでに静的変数がクラスレベルで宣言されていることを知っています。 これは、静的変数がクラスのすべてのオブジェクトと共有されることを意味します。 他のオブジェクトも反映する静的変数に変更を加えた場合。 静的変数は常にクラスのインスタンス変数です。 メソッド、ブロック、またはコンストラクタ内で静的変数を宣言することはできません。 したがって、静的変数を初期化しない場合、JVMはそれを初期化し、デフォルト値を提供します。しかし、finalキーワードで静的変数を宣言している場合、JVMはデフォルト値を提供しません。 JVMはデフォルト値を提供しないため、静的な最終変数を初期化する必要があります。 静的な最終変数は、クラスがメモリにロードされるときにメモリにロードされるため、コンパイル時定数です。
静的な最終変数を宣言するにはどうすればよいですか?
静的な最終変数を宣言するには、finalキーワードで宣言するものと、変数の初期化であるものの二つのことを処理する必要があります。 宣言時に静的なfinal変数を初期化することは必須ではありません。 静的ブロックで初期化することもできます。 宣言時に初期化していない場合は、空白の静的最終変数と呼ばれます。p>
static final dataType variableName = value;
ここで、staticはJVMを示すキーワードであり、変数はすべてのオブジェクトの細断処理されます。
finalは、この変数を最終変数として扱うJVMを示すキーワードです。
dataTypeは、作成する変数の型です。
varaibleNameは、作成する変数の名前です。
出力:コンパイル時の例外
静的最終変数の初期化
Javaでは、JVMは特に静的最終変数の初期化を処理します。 静的な最終変数を値で初期化する必要があります。 しかし、上記の例で見たように、静的な最終変数は一度しか初期化できません。
i)宣言中の初期化
変数の宣言中に静的な最終変数を初期化することができます。 ご存知のように、静的変数はクラスのロード前に読み込まれます。 だから、それらをクラスの読み込み完了を初期化する必要があります。p>
出力: 静的最終変数の値=5
ii)静的ブロック内の初期化
静的ブロック内の最終変数を初期化することはできますが、静的で しかし、静的な最終変数にはコンストラクタで値を割り当てることはできません。 したがって、宣言で値を割り当てる必要があります。出力:静的最終変数の値=5
javaの静的な空白の最終変数とは何ですか?すでに知っているように、静的な最終変数は一度だけ初期化できます。 静的な最終変数を複数回初期化することはできません。 空白の静的最終変数は、宣言中に初期化されない最終変数です。 静的ブロックでのみ初期化できます。空の最終変数は、静的ブロック内でのみ初期化できます。
空の最終変数は、静的ブロック内でのみ初期化できます。 Javaは、空の静的な最終変数を初期化する他の方法を提供していません。
静的な空白の最終変数を初期化するためのルール
1。 宣言中に静的な最終変数を初期化していない場合(空白の静的な最終変数)、静的ブロックで初期化する必要があります。
2. 静的な最終空の変数はコンストラクタで初期化できません。 静的ブロックで初期化する必要があります。
実際の例
人のデータを維持したいとします。 それぞれの人は、名前、住所、国名などを持っています。 しかし、共通の(静的な)定数(最終的な)国名国名をすべての人に提供したいと考えています。 ここでは静的な最終変数を作成しており、静的ブロックで初期化します。 この例では、プログラムの実行中に同じままになるように、静的な最終変数COUNTRYNAMEを作成します。P>出力:人の名前:Ram
人の住所:インド
人の国:インド
人の名前:ジョン
人の住所:アメリカ
人の国:インド