- this关键字表示类中的属性
- 使用this关键字调用本类的构造方法
- this关键字表示当前对象
(在Java中当前对象就是指当前正在调用类中方法的对象) - this与super的区别(见后边表格)
public class Person {
private String name;
private int age;
public Person(String name, int age) {
super();
this.setName(name);
this.setAge(age);
}
public boolean compare(Person per) {
Person p1=this; //this表示当前调用方法的对象,为per1
Person p2=per;
if(p1==p2) {
return true;
}
if(p1.name.equals(p2.name)&&p1.age==p2.age) {
return true;
}
else
return false;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class test {
public static void main(String[] args) {
Person per1=new Person("三金",19);
Person per2=new Person("明月",20);
Person per3=new Person("三金",19);
Person per4=new Person("三金",19);
if(per1.compare(per2))
System.out.println("per1和per2两个对象相等!");
else
System.out.println("per1和per2两个对象不相等!");
if(per3.compare(per4))
System.out.println("per3和per4两个对象相等!");
else
System.out.println("per3和per两个对象不相等!");
}
}
运行结果: