java中的静态属性和静态块谁先加载?

原问题:java中的静态属性和静态块谁先加载?
分类:编程开发 > 最后更新时间:【2017-07-13 22:17:13】
问题补充:在一个类中进行了如下定义static{ number=10; System.out.println(number);}static int number;我第三行报错了,这是为什么?

最佳答案

你这个是顺序执行,把static int number;移到静态代码块上面就不报错了


追问:
移到上面确实不报错,但是我不移的话把number改成Test.number也可以输出不报错,这又是问什么?
追问:
Test是这个类的类名
  • 追答:
    恩这个问题的话 就是static中加上Test.number的话就是这个number随着类的加载直接加载了,而static静态代码块也是这个时候加载的 这个是不分先后的
    最佳答案由网友  脑袋空空LF  提供
  • 公告: 为响应国家净网行动,部分内容已经删除,感谢网友理解。
    9

    分享到:

    其他回答

    暂无其它回答!

      推荐