デザイナーが始めるプログラミング

グラフィックデザインを経験後、プログラマーへと転身すべく日々の勉強を書き綴った奮闘日記

ローカル変数とメンバ変数の初期値について

初期値についての基本を覚え書きです。

下記のようにローカル変数とメンバ変数では初期化が異なるため

注意が必要です。

 

public class Test05 {

  static int j; //staticメソッドから使用するため変数もstaticにしています。

 static Integer k; //ついでにラッパークラスの初期値も確認

 public static void main(String[] args) {

  int i;

  Integer m;

  System.out.println( j ); //メンバ変数は自動的な初期化(intは0)がされるため問題ない。

  //System.out.println( i ); ローカル変数は自動的に初期化されないためコンパイルエラーとなる。

  System.out.println( k ); //Integerはラッパークラスなのでnullが初期値になる。

  //System.out.println( m ); ローカル変数は自動的に初期化されないためコンパイルエラーとなる。

 }

}

実行結果

0

null

 

という事でJava資格取得のためにはこういった普段は書かないような

プログラミングが出題されるので基本的な事を押さえないと

「あれ?これ打った事ないけどどうなったっけ?」ってなります汗