Static输出问题

来源:8-10 Java 中的 static 使用之静态初始化块

倒数三秒就能见到我

2016-05-14 14:02

5736be9c0001cb8003530223.jpg

5736be9c0001fdd505000375.jpg

为什么先输出 通过初始化块赋值num2  在输出通过初始化块赋值num1

写回答 关注

2回答

  • 流逝的回忆已成空白
    2016-05-16 14:07:29
    已采纳

    这设计到java中的优先级、static 有优先级的、

    倒数三秒就能...

    非常感谢!

    2016-05-18 16:44:59

    共 2 条回复 >

  • 不甘于现实
    2016-05-14 14:32:43

    首先你创建了类的对象hello后,就会按顺序(先执行静态化初始化块,再初始化块,最后构造方法)执行一边,然后依次执行你的输出语句命令,也就是 num1:91; num2:74;num3:83。 最后有创建了一个了的对象hello2,所以又要和前面一样按顺序(先执行静态化初始化块,再初始化块,最后构造方法)执行,但是静态初始化块只能执行一边,所以不再执行了,因此是 先执行初始化块,再执行构造方法。  

Java入门第二季 升级版

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

530655 学习 · 6091 问题

查看课程

相似问题