静态代码块的执行顺序

1.静态对象不调用静态块。

2.静态属性类加载的时候开辟空间,赋默认值。

3.每次创建对象都是类初始化过程。

4.若未调用过静态块,则创建普通对象是先调用静态块,再调用普通代码块,最后才调用构造方法。

5.若static代码有多个,JVM按照它们在类中出现的先后顺序依次执行它们,每个静态代码块只会被执行一次。

发现执行顺序变了,它会先执行静态代码块,再执行st的实体化。

这边,我发现静态代码块与静态成员变量的初始化居然和代码顺序有关

所以不管是静态代码块还是静态成员变量,java都是哪个在前面先执行哪个。

发布了244 篇原创文章 · 获赞 2 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_44813090/article/details/105234639