class Demo1
{
public static void main(String[] args)
{
A a=new A();
}
}
class A
{
int num=2;
{
System.out.println(num);
}
A()
{
System.out.println(num);
}
}
下面这个图是我总结的对象的建立过程Person p = new Person();为例。你可以参考一下。另外纠正一下,我认为是在你没有定义构造函数的时候,系统会自动给你加一个空参数的构造函数,不是this();
在你的这个程序中对象的建立过程是
1、建立属性值num并被默认初始化,num=0;
2、进行显示初始化num=2;
3、构造带模块运行进行,打印第一个2;
4、构造函数运行,打印出第二个2