为了账号安全,请及时绑定邮箱和手机立即绑定

静态变量初始化块

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

正在回答

2 回答

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

0 回复 有任何疑惑可以回复我~
#1

我要都学会 提问者

非常感谢!
2016-07-24 回复 有任何疑惑可以回复我~

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

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

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

  3. 最后执行构造方法

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530629    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

静态变量初始化块

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信