作者:小鱼2502907687 | 来源:互联网 | 2024-11-13 14:19
版权声明:本文为博主原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https:blog.csdn.netweixin_43171186art
在java中一对{}包裹的代码就叫做代码块;
块{} : 是一个作用域
1、 {}写在方法中:普通语句块|局部代码块 执行时机:方法调用时候
public void test(){{System.out.println("这是普通代码块"); }
}
2、 {}写在类中方法外:构造块 执行时机:创建对象时
public class Demo01{{System.out.println("这是构造块");}}
3、 static{}写在类中方法外:静态块 执行时机:类加载
public class Demo01{static { System.out.println("这是静态代码块");}
}
4、运行顺序
静态代码块static{}(同时存在多个时从上到下依次执行)—>main方法—>构造块(同时存在多个时从上到下依次执行)----->构造器
public class Black {public Black(){System.out.println("构造器");} {System.out.println("这是构造块1");}{System.out.println("这是构造块2");}{System.out.println("这是构造块3");}{System.out.println("这是构造块4");}static{System.out.println("静态代码块先于main方法执行1");}static{System.out.println("静态代码块先于main方法执行2");}static{System.out.println("静态代码块先于main方法执行3");}static{System.out.println("静态代码块先于main方法执行4");} public static void main(String[] args) {System.out.println("main方法执行"); Black bl = new Black(); }
}
运行结果