class BaseTest {
public static void main(String[] args) {
Person p = new Person();
System.out.println(p.age);
}
}
class Person {
int age = 10;// 显示初始化age
Person(){
System.out.println(age+"构造函数");
}
// 构造代码块
{
System.out.println(age+"构造代码块");
this.age = 20;
}
}
结果为:10构造代码块
20构造函数
20
这个结果也告诉了我们,程序执行的过程,先执行显示初始化int age = 10,在执行构造代码块,最后在执行构造函数,所以执行结果为20是必须的
|