java 프로그래밍 사상: 두 대상의 내용이 같은지 판단
3716 단어 Java 프로그래밍 사상
"=="과 equals 방법의 차이
"a==b": (본질은 양측 변수 a, b내의 내용을 비교하는 것이다)
equals 방법:
사용자 정의 클래스의 대상 내용이 같은지 여부
equals 방법의 재작성
equals를 다시 쓰는 방법은 논리적으로 이름이 같은 두 대상을 같은 대상으로 판정한다
public boolean equals(Object obj) {
// instanceof , obj Name , True
if(obj instanceof Name){
Name name=(Name)obj;// obj Name
return (firstname.equals(name.firstname))&&(lastname.equals(name.lastname));
// this.fisrtname name.firstname;
}
return super.equals(obj);
//obj Name , Object equals , this obj
}
hashCode 방법의 재작성
기본적으로hashCode 방법은 대상의 저장 주소를 비추는 것입니다
public int hashCode(){
return firstname.hashCode();
//firstname , hashCode() ,
}