this表示当前对象的例子

  程序中Person类中定义了一个compare方法,此方法的主要功能就是专门完成两个对象的比较操作,在比较时,首先进行地址的比较,如果两个对象的地址一样,则肯定是同一个对象,而如果地址不相等,则将一个个属性依次进行比较。对象比较操作在开发中是一个重要的概念,要重点掌握

class Person
{
    private String name;
    private int age;
    public Person(String name, int age)
    {
        this.setName(name);
        this.setAge(age);
    }
    public boolean compare(Person p)
    {
        Person p1=this;//表示当前调用方法的对象,为per1
        Person p2=p;
        if (p1==p2)
        {
            return true;
        }
        if (p1.name.equals(p2.name) && p1.age==p2.age)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
    public void setName(String n)
        {
            name=n;
        }
        public String getName()
        {
            return name;
        }
        public void setAge(int a)
        {
            age=a;
        }
        public int getAge()
        {
            return age;
        }
}
public class ThisDemo08
{
    public static void main(String[] args)
    {
        Person per1=new Person("zhang san",20);
        Person per2=new Person("zhang san",20);
        if (per1.compare(per2))//进行对象的比较
        {
            System.out.println("==");
        }
        else
        {
            System.out.println("bu xiang deng");
        }
    }
}
原文地址:https://www.cnblogs.com/coolso/p/5855603.html