모든 클래스의 부모 클래스는 Object 클래스다.
메소드
- protected Object clone(): 자기 자신을 복제해서 새 객체를 만들어 리턴한다.
- boolean equals(Object obj): equals 메소드를 제대로 구현했다면, equals 메소드는 this 객체와 파라미터 obj 객체의 내용이 동일한지 비교해야 한다. (equality 비교) 그런데 Object 클래스에 구현된 equals 메소드는 객체의 내용을 비교하지 않고 두 객체가 동일한 객체인지 비교한다. (identity 비교) 그래서 equality를 제대로 비교하려면 자식 클래스에서 이 메소드를 재정의 해야 한다.
- protected void finalize(): 객체가 더 이상 사용되지 않을 때, 자동으로 객체가 파괴되고 메모리가 회수된다. 이때 객체가 파괴되기 직전에 finalize() 메소드가 호출된다.
- Class<?> getClass(): 객체가 속한 클래스에 대한 정보를 담고 있는 객체를 리턴한다.
- int hashCode(): 객체를 hashtable 테이블 자료구조에 넣을 때 필요한 해쉬 값(hash code value)를 리턴한다.
- String toString(): 객체의 내용을 표현하는 문자열을 리턴한다. 리턴되는 문자열에 객체의 내용이 잘 표현되도록, 자식 클래스에서 이 메소드를 재정의 해야 한다.
'Java' 카테고리의 다른 글
배열 정렬 (0) | 2020.01.15 |
---|---|
문자열 클래스 (0) | 2020.01.15 |
JVM, JRE, JDK, 메모리 구조 (0) | 2020.01.15 |
Thread (0) | 2019.07.07 |
Iterator Interface (0) | 2019.07.07 |