이것은 무엇입니까? Java 이름 정적 메소드
public class ABC {
public ABC() {
System.out.println("world");
}
static {
System.out.println("hello");
}
}
인쇄됩니다 : 내가 정말 이해가 안 안녕하세요 세계
, 또는 정적 코드는 방법의 종류.
이것은 무엇입니까? Java 이름 정적 메소드
public class ABC {
public ABC() {
System.out.println("world");
}
static {
System.out.println("hello");
}
}
인쇄됩니다 : 내가 정말 이해가 안 안녕하세요 세계
, 또는 정적 코드는 방법의 종류.
정적 초기화 블록이라고합니다.
클래스가 처음로드 될 때 실행됩니다. 한 번만.
예를 들어, 생성자는 클래스가 인스턴스화 될 때마다 실행됩니다. 정적 블록은 VM/클래스 로더에 의해 정적으로 처음로드 될 때 한 번만 실행됩니다.
정적 블록이 클래스 로더가 클래스를로드 할 때마다 정확히 한 번 실행된다는 점은 가치가 있다고 생각합니다. 즉, 클래스 로더가 둘 이상인 경우 블록이 두 번 이상 실행될 수 있습니다.
정적 이니셜 라이저에 대한 JLS 설명은 [this] (http://docs.oracle.com/javase/specs/jls/se7/html/jls-8.html#jls-8.7) 및 [this] (중요하게 될 수있는 초기화 순서에 대한 JLS 설명은 http://docs.oracle.com/javase/specs/jls/se7/html/jls-12.html#jls-12.4.2)를 참조하십시오. – selig