代码执行顺序,
作者:互联网
//代码
声明变量a 时,并没有调用代码块,代码块是在被new的时候才运行的
构造块先于构造器运行
静态代码块在类被加载的时候运行
普通变量的赋值早于代码块?
# 结论
1.静态代码块一定会被执行(在类加载时执行),而构造代码块不会。
2.代码执行顺序:
(凡是静态的,都只会执行一次)因此以上例子中的运行顺序是:a->b->静态代码块->main
静态变量(上面例子中,构造器和构造块先执行,就是因为,这里先声明静态变量《应该是这样吧...》)
静态代码块(在类被加载时执行,因此在本例中,不管有没有调用,都执行了)
构造代码块(初始化代码块?)(在类被创建时运行,构造代码块的作用是给对象进行初始化,运行先于构造函数)
3.仍然有的疑问:为什么在类被 new 的时候没有先运行静态代码块??
还是有些乱....
好吧,还是看看别人总结的吧,搜到一个感觉比较详细的:
(7条消息) 静态代码块,构造代码块,构造函数执行执行顺序详解_lahand的博客-CSDN博客_静态代码块和构造器执行顺序是?
标签:顺序,静态,代码,构造,代码执行,执行,运行 来源: https://www.cnblogs.com/yuedong-JavaNotes/p/16684995.html