今天看了{}这个玩意 不知道干嘛的,就了解一下做个标记
代码块场景一
public class CodeDemo01 { public static void main(String[] args) { int y = 100; System.out.println("y=" + y); { int x = 10; System.out.println("x = " + x); } } }
结果 y=100
x = 10
按顺序执行 正常逻辑
代码场景二 代码块和构造方法
public class CodeDemo01 { public CodeDemo01() { System.out.println("==========这是构造方法============"); } //这是构造代码块 { System.out.println("=======这是构造块======"); } public static void main(String[] args) { new CodeDemo01(); new CodeDemo01(); } } 结果二 :=======这是构造块======
==========这是构造方法============
=======这是构造块======
==========这是构造方法============
从结果可以看到,方法块先于构造方法执行
场景三 方法块,静态方法块,构造方法
static { System.out.println("这是Demo中的静态代码块"); } { System.out.println("这是Demo类中的构造块"); } public CodeDemo03() { System.out.println("这是构造方法"); } public static void main(String[] args) { new CodeDemo03(); new CodeDemo03(); new CodeDemo03(); }从运行结果可以看到 这是Demo中的静态代码块
这是Demo类中的构造块
这是构造方法
这是Demo类中的构造块
这是构造方法
这是Demo类中的构造块
这是构造方法
从运行结果可以看到 静态代码块最先执行 并且只执行一次,