局部代码块 存在于方法体中 作用是给局部变量赋值,或者直接定义局部变量
public class D1 {
public void name() {
int a = 10;
{
a = 50;
int b = 40;
System.out.println(a);
System.out.println(b);
}
System.out.println(a);
}
public static void main(String[] args) {
D1 d1 = new D1();
d1.name();
}
}
构造代码块 定义在属性位置【类中方法外】的代码块 作用是给全局变量赋值
当new对象的时候构造代码块已经执行了
public class Test1 {
int age;
String name;
public Test1() {
super();
System.out.println("空参构造执行");
}
{
age = 223;
name = "李大钊";
System.out.println("构造代码块执行");
}
测试类 此处不明白Test1里面的两条输出语句怎么执行的晕死
```Java
public class Test2 {
public static void main(String[] args) {
Test1 T = new Test1();
System.out.println(T.age);
System.out.println(T.name);
}
}