イニシャルブロック

841 ワード

クラス初期化ブロック(=静的初期化ブロック)

  • クラスに静的ブロック({}間)がある場合、クラスがメモリに格納されている間に
  • が1回実行される.
  • 一度保存後x
  • を再保存する必要がある.

    インスタンス初期化ブロック

  • オブジェクトに初期化するときに実行されるブール値
  • オブジェクトが生成するたびに
  • が実行する.
  • 生成者の前に実行されます.
  • public class Init{
    
       // 생성자
       Init() {
          System.out.println("생성자");
       }
       
       // 클래스 초기화 블럭
       static {
          System.out.println("클래스 초기화 블럭");
       }
       
       // 인스턴스 초기화 블럭
       {
          System.out.println("클래스 초기화 블럭");
       }
       
       public static void main(String[] args) {
          System.out.println("main메서드 시작");
          System.out.println("Init 객체 생성");
          Init init1 = new Init();    // 객체 생성
       }
    }
  • 以上のコード実行結果(実行順序)
  • 클래스 초기화 블럭
    main메서드 시작
    Init 객체 생성
    인스턴스 초기화 블럭
    생성자