1. equals()는 참조변수의 주소값을 이용하여 연산한다.
2. hashCode()는 해싱기법에 사용되는 해시함수를 구현한것
- public native int hashCode(); 와 같이 native 메소드이다.
- 메모리 주소를 이용하여 hashcode를 생성한다. 따라서 한번의 실행도중 생성되는
모든 instance는 상이한 hashcode를 가진다.
- equals()를 overriding시 hashCode()도 overriding해주어야 한다.
같은 객체라면 hashCode도 동일해야 하기 때문이다.
3. clone()
- protected native Object clone() throws
CloneNotSupportedException;
- Clonable interface를 구현해야 사용이 가능하다.
- 이것을 통해 interface의 사용법에 대해 좀더 알게 되었다.
clone()을 호출하는 곳에서는 Cloneable을 구현한 concrete class가 아닌
Cloneable interface를 이용하여 호출 할것이다.
댓글 없음:
댓글 쓰기