问答详情
源自:8-10 Java 中的 static 使用之静态初始化块

静态变量初始化块

为什么先输出静态初始块化age而不是先输出通过构造方法初始化name?

提问者:我要都学会 2016-07-23 08:58

个回答

  • weibo_徐_無_鬼_0
    2016-07-23 09:15:48
    已采纳

    静态初始化块在类加载时执行,构造方法是在对象创建的时候执行。在先后顺序上,是类的加载在先

  • 落雷惊风
    2016-07-23 10:18:01

    这里原本我也糊涂,但现在说明一下。

    1. HelloWorld hello = new HelloWorld();创建对象后,先初始化该类的静态块和静态成员变量

    2. 静态块和静态成员变量执行完毕后,对非静态块和非静态成员变量进行初始化

    3. 最后执行构造方法