1.当成员变量和局部变量重名时,可以用关键字this来区分
2.this:代表对象。
代表哪个对象呢?当前对象
this就是所在函数所属对象的引用
简单的说,就是哪个对象调用了this所在的函数,this就代表了哪个对象
3.this:也可以用于在构造函数中调用其他构造函数
注意:只能定义在构造函数的第一行,因为初始化动作要先执行
class Person//定义了一个Person的类
{
private String name;
private int age;
Person(String name)
{
this.name = name;
}
Person(String name,int age)//构造函数
{
this(name);//在构造函数中调用其他函数
this.age = age;
}
Person(int age,String name)//构造函数(重构)
{
this.name = name;
this.age = age;
}
public void speak()
{
System.out.println(this.name+":"+this.age);
}
//比较是否是同龄人
public boolean compare(Person p)
{
return this.age==p.age;
}
}
class thisDemo
{
public static void main(String[] args)
{
Person p = new Person("小强",5);
p.speak();
Person p1 = new Person(10,"旺财");
p1.speak();
return;
}
}