「Java」static初期化ブロックとコンストラクタの実行順番のサンプル

2022年1月21日

書式
順番
1.static初期化ブロックが実行されます。クラスが呼ばれる1回目のみ実行されます。
2.初期化ブロックが実行されます。クラスのインスタンスが生成される毎に実行されます。
3.コンストラクタが実行されます。クラスのインスタンスが生成される毎に実行されます。

使用例

package com.arkgame.testinfo;

class EmpInfo {
      
      // コンストラクタ
      EmpInfo() {
            System.out.println("コンストラクタが実行されます");
      }
      
      // static初期化ブロック
      static {
            System.out.println("static初期化ブロックが実行されます");
      }
      // 初期化ブロック
      {
            System.out.println("初期化ブロックが実行します");
      }
      void funA() {
            System.out.println("test data");
      }

}

public class Kademo {

      public static void main(String[] args) {
            EmpInfo cftA = new EmpInfo();
            cftA.funA();
      }

}

実行結果
static初期化ブロックが実行されます
初期化ブロックが実行します
コンストラクタが実行されます
test data

Java

Posted by arkgame