(21)静态代码块语法|特点|作用、静态初始化块、构造代码块、构造函数输出顺序练习

来源:互联网 发布:水质监测数据 编辑:程序博客网 时间:2024/05/22 12:34

一、语法

  static

{

          静态代码块中的执行语句

}

二、特点

     随着类的加载而执行,而且只执行一次,并优先于主函数而执行

三、作用

     用于给类初始化的

     (区分构造代码块:给对象初始化的)

      (普通构造函数:是给对应对象初始化的)

四、例子


public class Demo {    static {System.out.println("b");}public static void main(String[] args) {new DemoTest();new DemoTest();//注意静态初始化类只会在类加载时,执行一遍System.out.println("over");                //DemoTest s=null;虽然创建了类变量,但是没有指向,所有相当于没用到这个类,所以DemoTest类不会被加载                                  //Demo这个类方法执行,所以会加载Demo这个类   若main中只有这句:执行结果为  b  c                //DemoTest s=new DemoTest();//会调用默认的构造方法,用到DemoTest类,所以会加载 }static {System.out.println("c");}}public class DemoTest {    static {        System.out.println("a");    }}运行结果:b  c  a  over

六、静态初始化块、构造代码块、构造函数输出顺序练习


public class Demo {    Demo(){System.out.println("b");}static {System.out.println("a");}{System.out.println("c");}Demo(int x){System.out.println("d");}} 别的类中调用:new Demo(4);    输出:a  c  d



阅读全文
0 0
原创粉丝点击