1、Collection 里面有remove方法,当remove(某个对象),Collection里面有此对象的时候,因为都是堆里面分配的内存,所以不可能相等,这个角度看,肯定是删除不了的,这个时候,我们就要在此类里面实现equals()和HashCode()方法。如:
public boolean equals(Object obj){
if(obj instanceof NameTest ){
NameTest nt = (NameTest)obj;
return this.fName.equals(nt.fName) && this.lName.equals(nt.lName);
}
return super.equals(obj);
}
public int hashCode(){
return this.fName.hashCode();//就是把hashCode()这个函数交给字符串这个类的重新函数处理;
}
2、这一章内容主要记住几个接口和几个类的关系,如下图: