- public boolean equals(Object obj) //这里重写了Object类的equals方法
- {
- if(!(obj instanceof Person)) //这里其实就是多态思想,在父类引用指向子类对象时,向下转型前先判断这个父类是不是属于这个子类的。
- return false; //这里如果obj不属于Person类,就返回false
- Person p = (Person)obj; //否则obj即属于Person类,所以强制转型
-
- return this.name.equals(p.name) && this.age == p.age; //这里其实就是通过判断对象的name和age属性是不是都一样的,如果两者均为true,返回true,则说明两个对象是同一个对象。这种写法基本上是用于集合中存储自定义对象时,判断元素对象是不是具有重复的
复制代码 |