本帖最后由 陈丽莉 于 2013-1-5 15:35 编辑
构造函数,是和类名同名的函数,可重载,用于给对应的对象进行初始化。比如你的程序里有public Test(){}和 public Test (int var){this();this.var=var;}这两个构造函数,当执行new Test(88)时,调用的是第二个有且只有一个int参数的构造函数;
this()用于构造函数间互相调用,并不代表它本身是构造函数,因为参数为空,所以调用的是public Test(){},因为是在第二个构造函数中调用的第一个构造函数,所以作用的都是同一个对象。
this.var=var的意思是new Test(88)这个匿名对象的var值为88.关于用this赋值,老师视频中的原话是:哪个对象在调用this所在函数,this就代表哪个对象。
也就是说,虽然一共调用了两个构造函数,但都是作用于同一个对象。 |