静态块和init函数之间的执行顺序

时间:2017-01-27 11:50:45

标签: java static-methods static-initializer

静态块和静态初始化函数之间定义的执行顺序是什么?这是他们在班级定义中的顺序吗?

例如:

public class Test {

    static  {System.out.println("1");   }

    static int x = getX();  static int getX() { System.out.println("2"); return 5; }

    static { System.out.println("3"); }
}

在我的系统上打印1,2,3。这是由Java保证的吗? 我已经看过类似的问题,但没有一个问题包含答案。

0 个答案:

没有答案