정적 블록의 실행 순서 정적 메소드, 생성자

원본 링크 : https://blog.csdn.net/qq_25615395/article/details/78294985

레이코 :
package io.renren;

/ **
 * 9/29/17에 루트 작성.
 * /
공용 클래스 StaticTest {


    정적 INT 연령 = 1;
    INT age1 = 2;

    {정적
        에서 System.out.println는 ( "이것은 정적 블록");
    }

    {
        에서 System.out.println는 (AGE1 + "이것은 정상적인 블록은")
    }

    StaticTest 공공 () {
        에서 System.out.println ( "이것은 생성자");
    }

    정적 무효 표시 공개 () {
        에서 System.out.println는 ( "이것은 정적 방법");
    }

    재미있는 공극 공개 () {
        에서 System.out.println는 ( "이것은 종래의 방법");
    }

    공공 정적 무효 메인 (문자열 []에 args) {
        //System.out.println(age);
        StaticTest의 t = 새로운 StaticTest ();
        StaticTest.show ();
        t.fun ();
        /*System.out.println(t.age1);*/

        문자열 A =에서 Boolean.toString (TRUE);
        에서 System.out.println (a);
    }

}


결과 :


초기화 시퀀스 자바
클래스 변수 (정적 변수), 인스턴스 변수 (비 정적 변수) (예 : 클래스 변수 [변수 정적, 정적 코드 블록) 정적 키워드 변성 정적 코드 블록, 코드 블록 비 정적 초기화 타이밍은 클래스 인스턴스를 생성하기 전에 초기화되는 초기화되고, 순차적으로 위에서 아래로 순서대로 실행된다;

정적 키워드 수정하지 않는다 (예 : 인스턴스 변수 [비 정적 변수, 
비 정적 코드 블록) 클래스 생성자 코드 블록보다 실질적 초기화가 실행되는 클래스 생성자 추출되지만 우선 또한 위에서 아래로 순차적으로 수행하는 수행한다.

일 예에서, 새로운 클래스 B가 먼저로드해야 할 때. (뉴를 사용하여 만든 클래스 로더를 호출 할 때 자바 클래스 만 부과됩니다)
부모 클래스가 처음으로로드 된 클래스를로드하는 동안은, 다음 B 서브 클래스 로딩이
부모 클래스 A를로드 한 후, 정적 작업이 완료 (정적 코드 등 초기화 코드에 따라 출현 순서로 동일한 수준이다 변수)
정적 동작 완료 서브 클래스 B를로드 한 후

클래스 로딩이 완료되면 A는 인스턴스화 

1. 소단위 클래스 B를 인스턴스화 할 때, 제 부모 클래스 A2, 상위 클래스 A의 인스턴스는 인스턴스 (비 정적 코드)의 제 1 부재를 인스턴스화한다 
2. 부모 클래스 생성자는 
실시 예 3 서브 클래스 B의 구성원 의 (비 정적 코드) 
B의 생성자 4. 서브 

> 부모 클래스 비 정적 초기화 코드 - -> 부모 클래스의 생성자는 초기화 -> 비 정적 코드의 설정 서브 -> 서브 클래스의 생성자 초기화 될 정적 코드를 초기화> 자식 클래스 - 정적 코드 부모를 초기화

 

 

요약 :

실행 보통 순서 : 정적 클래스의 초기화 코드 - 기반의 비 초기화 정적 코드 >> - -> 클래스 생성자이 초기화> 클래스의 인스턴스를 생성

순차적 계층에서 수행되는, B는 상속

부모 클래스의 정적 코드를 초기화 -> 정적 코드의 서브 클래스를 초기화 -> 클래스의 인스턴스를 생성 - >> 부모 클래스의 비 정적 코드를 초기화 -> 부모 클래스 생성자 초기화 -> 비 정적 코드의 서브 클래스를 초기화를 -> 초기화 서브 클래스의 생성자

자바 클래스 로더 : 정적 코드 실행로드 클래스, 위치 동안 발생

비 정적 코드를 수행하면, 생성자에 우선 클래스 코드 실행의 인스턴스화시에 발생한다. 위치 : 클래스 생성자


----------------

 


면책 조항 :이 문서에 원래 문서 CSDN 블로거 "진평 마을 황산 영웅"이며, BY-SA 저작권 계약, 복제, 원본 소스 링크이 문을 첨부 해주세요 CC 4.0을 따릅니다.
원본 링크 : HTTPS : //blog.csdn.net/qq_25615395/article/details/78294985

추천

출처blog.csdn.net/Daniel__Wu/article/details/102768513