スポンサードリンク
HOME > Java > クラス機能 スタティックイニシャライザ

Java - クラス機能 スタティックイニシャライザ

静的メンバ変数を初期化するには、どうすれば良いでしょうか?

静的メンバなので、インスタンスがなくてもアクセスできますが、

その場合、コンストラクタが呼ばれません

じゃあどこで初期化すればいいのかと言うと、変数の後に=(代入演算子)

を付けて初期化します。

class Cstatic {
   public
static int sdata = 10;
}




この初期化方法で全て解決しそうな感じはしますが、

大きい配列の初期化クラス配列の初期化などは非常に面倒で、

=(代入演算子)を使った記述は、見づらくなる恐れがあります。

このような場合のために、スタティックイニシャライザと言う機能が用意されています。

スタティックイニシャライザは、静的メンバ変数の初期化用の関数みたいなものです。

つまり、コンストラクタの代わりのような役目を果たします。

記述方法は、static { }となります。

class Cstatic {
   public
static int sdata1;
   public static int sdata2;

   
static {
      sdata1 = 5;
      sdata1 = 10;
   
}
}




スポンサードリンク







HOME

言語解説編
プログラミング用語・知識

C言語

C++言語

Java

C#

Visual Basic.NET

アプリケーション編
C言語による
コンソールプログラミング




Copyright (C) プログラミングランド All Rights Reserved