Java为什么静态打印出文本而不是方法

Khi*_*uan 1 java

只是想知道为什么静态总是首先打印出来而不是方法.

码:

public class TestMe {
    static {
        System.out.println("D");
    }

    {
        System.out.println("B");
    }


    public void printMe() {
        System.out.println("Z");
    }

    public static void main(String []args) {
        new TestMe().printMe();
    }

}
Run Code Online (Sandbox Code Playgroud)

输出:

D
B
Z
Run Code Online (Sandbox Code Playgroud)

The*_*ind 6

首次初始化类时会执行静态块(一旦加载就会发生类的初始化),因此它们比实例级块/方法执行(在创建对象后执行)