class TestDemo
{
public static void main(String[] args)
{
Person p1 = new Person(21);
Person p2= new Person(22);
boolean b = p1.compare(p2);
System.out.println(b);
}
}
this可以看成调用其所属方法的对象的另外一个称呼。就好像张三(对象)使用了这把尺子(方法),也可说为这个人(this)使用了这把尺子(方法)。
Person p1 = new Person(21);//p1新建对象后,传入了参数,调用了Person这个对象的构造方法 Person(int age){},this.age=age,this可以看成是一个调用对象p1的另外一个称呼,this.age其实是调用对象p1在调用其年龄属性,而等号右面的age,就是p1新建对象时传入的参数。
Person p2= new Person(22);//p2也做了同样的事。
boolean b = p1.compare(p2);//在这里,等号的右边,p1然后一点,那么就是p1在调用自己新建对象后的compare方法,而它的这个方法需要传一个对象进去,所以p2就是要传进去的实际参数,p = p2,而p1是调用方法的对象,所以这个对象代表了this,this = p1, return后面的语句就是两个对象分别调用自己的年龄属性然后进行比较。