Java -変数の初期化-
メンバ変数の初期化
インスタンス変数の値は、インスタンスが生成されたときの自動的に初期化されます。
同様に、static変数の値も、プログラム開始時に自動的に初期化されます。
それに対して、ローカル変数の初期化は明示的に初期値を代入しておこないます。
メンバ変数の初期化デフォルト値
メンバ変数は、代入演算子(=)とリテラルを使って変数を初期化することができます。
変数の宣言で明示的に値を代入して初期化を行わなかった場合は、自動的にデフォルト値が格納されます。
この自動初期化は、ローカル変数ではおこなわれません。
メンバ変数のデフォルト値
データ型 | デフォルト値 |
---|---|
boolean | false |
byte | 0 |
short | 0 |
char | '¥u0000' |
int | 0 |
long | 0L |
float | 0.0F |
double | 0.0D |
参照型 | null |
ローカル変数の初期化
ローカル変数の宣言時には、値は自動的に初期化されません。
このため、明示的に初期化の処理を記述し、変数を利用できるようにします。
初期化されていない状態で、その変数を利用しようとすると、コンパイラエラーが起こります。