首页 > 代码库 > JAVA中代码段的执行顺序

JAVA中代码段的执行顺序

      我记得刚毕业那时候,学习JAVA最怕的就是这儿了,关于这的JAVA题,我一向都做不对。今天终于复习到这了,看了好半天,得赶紧把刚才学习到的那点东西记下来。

一、关于static的代码段执行顺序

<script src="https://code.csdn.net/snippets/393923.js" type="text/javascript"></script>

执行结果如下:

Cup(1)
Cup(2)
Cups()
Cups()
Inside main()

f(99)

二、关于非static得代码段执行顺序

<script src="https://code.csdn.net/snippets/393918.js" type="text/javascript"></script>
执行结果如下:
Inside main()
Mug(1)
Mug(2)
c1 & c2 initialized
Mugs()
Mug(1)
Mug(2)
c1 & c2 initialized
Mugs()


结论:这里面涉及到的知识很多,有代码块、匿名内部类、static初始化等等,用这么一个大例子我感觉基本能说清楚了。
需要提一下就是关于static变量、方法、代码块的初始化只有一次,也就是当类第一次被调用的时候运行初始化。以后无论此类再被new多少次,均不再运行初始化。
收工!接着看新概念去~