다음 코드를 실행하고 결과를 관찰하세요:
package com.test; public class HelloB extends HelloA { public HelloB() { } { System.out.println("I'm B class"); } static { System.out.println("static B"); } public static void main(String[] args) { new HelloB(); } } class HelloA { public HelloA() { } { System.out.println("I'm A class"); } static { System.out.println("static A"); } }
결과는 다음과 같습니다:
static A static B I'm A class I'm B class
분석:
1. 정적 코드 블록: 클래스 로딩 프로세스의 초기화 세 번째 단계에서 수행됩니다. 주요 목적은 클래스 변수에 초기 값을 할당하는 것입니다.
2. 구성 코드 블록: 독립적이며 실행하려면 캐리어에 연결되어야 합니다. Java는 일부 공통 인스턴스 변수를 인스턴스화하고 코드 양을 줄이기 위해 각 구성 메서드 앞에 구성 코드 블록을 배치합니다. .
3. 구성 방법: 변수를 인스턴스화하는 데 사용됩니다.
요약:
1은 클래스 수준이고 2와 3은 인스턴스 수준이므로 1이 2와 3보다 우선합니다.
그들의 실행 순서는 1>2>3;
위의 Java에서의 정적 코드 블록, 구성 코드 블록 및 구성 방법에 대한 자세한 설명은 모두 편집기에서 공유한 내용이므로 참고가 되기를 바랍니다. 그리고 모두가 Duoduo에서 PHP 중국어 웹사이트를 지원하길 바랍니다.
Java의 정적 코드 블록, 구성 코드 블록, 구성 방법에 대한 자세한 설명은 PHP 중국어 사이트를 참고하세요!