[Java] 정적 블록

최대 1 분 소요

정적 블록


정적 블록

정적 필드는 다음과 같이 필드 선언과 동시에 초기값을 주는 것이 일반적이다.

    static double pi = 3.141592;

하지만 복잡한 초기화 작업이 필요하다면 정적 블록(static block)을 이용해야 한다

    static{
        ...
        }

정적 블록은 클래스가 메모리로 로딩될 때 자동으로 실행된다. 정적 블록이 클래스 내부에 여러 개가 선언되어 있을 경우에는 선언된 순서로 실행된다.

package ch06.sec10.exam02;

public class Television {
    static String company = "MyCompany";
    static String model = "LCD";
    static String info;

    static{
        info = company+"-"+model;
    }
}

package ch06.sec10.exam02;

public class TelevisionExample {
    public static void main(String[] args) {
        System.out.println(Television.info);
    }
}

  • 정적 메소드와 정적 블록은 객체가 없어도 실행된다는 특징 때문에 내부에 인스턴스 필드나 인스턴스 메소드를 사용할 수 없다. 또한 객체 자신의 참조인 this도 사용할 수 없다.

  • 출처: 이것이 자바다

카테고리:

업데이트:

댓글남기기