读书人

java解惑您知多少(五)

发布时间: 2014-01-08 00:30:58 作者: rapoo

java解惑你知多少(五)
//?0??

  • ?}??
  • }??

    为什么第二个输出是0而不是2呢?这就是因为VM是严格按照你声明的顺序来初始化静态域的,所以前面的引用后面的

    静态域时,基本类型就是0,引用类型就会是null。

    ?

    所以要记住:静态域,甚至是final类型的静态域,可能会在它们被初始化之前,被读走其缺省值。

    ?

    另,类初始化规则请参考《惰性初始化》一节

  • 读书人网 >编程

    热点推荐