这篇文章主要介绍了简单了解java中静态初始化块的执行顺序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在java中,其应
这篇文章主要介绍了简单了解java中静态初始化块的执行顺序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
在java中,其应该是先于所有的方法执行。
下面是测试代码:
public class Test1 { static{ System.out.println("执行静态初始化块test1..."); } { System.out.println("执行初始化块test1"); } public Test1(){ System.out.println("执行test1构造函数"); } } public class Test2 extends Test1{ static{ System.out.println("执行静态初始化块test2..."); } { System.out.println("执行初始化块test2"); } public Test2(){ System.out.println("执行test2构造函数"); } } public class Test3 extends Test2{ static{ System.out.println("执行静态初始化块test3..."); } { System.out.println("执行初始化块test3"); } public Test3(){ System.out.println("执行test3构造函数"); } } ---------------------------------------------------------------------------------------------------- public class Test { public static void main(String[] args){ Test3 t = new Test3(); } }
运行结果如图:
从结果即可看出,静态初始化块的执行顺序十分靠前,并且在静态初始化块之间,谁在程序的前面谁先执行。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。