목차

  1. Object 란??
  2. Object 클래스의 메소드
    • getClass()
    • hashCode()
    • equals(obj)
    • toString()

 

 

1. Object 란??

자바의 클래스를 선언할 때, extends 키워드로 다른 클래스를 상속하지 않으면 암시적으로 java.lang.Object 클래스를 상속한다.

따라서, Object는 자바의 최상위 부모 클래스이다. 때문에 Object 클래스에 포함된 메소드들을 사용할 수 있으며 대표적인 메소드들은 아래와 같다.

 

 

2. Object 클래스의 메소드 

  1. getClass() : 실제 인스턴스 공간(객체)의 타입을 알려주는 메소드
  2. hashCode() : 인스턴스 공간의 일련번호를 알려주는 메소드
  3. equals(obj) : 객체 간의 동일 비교를 하는 메소드 (obj 객체가 자신의 객체와 같으면 true, 다르면 false)
  4. toString() : 객체 정보를 문자열로 반환하는 메소드

 

 

2-1. getClass()

1) 특징

  • 실제 인스턴스 공간(객체)의 타입을 알려주는 메소드

 

2) 예제

 

 

2-2. hashCode()

1) 특징

  • 인스턴스 공간의 일련번호를 반환하는 메소드
  • 다량의 데이터를 저장&검색하는 해싱기법에 사용된다
  • equals()를 오버라이딩하면, hasCode()도 같이 오버라이딩해야한다. (equals()의 결과가 true인 두 객체의 hashCode는 같아야하기 때문)

 

2) 예제

 

 

2-3. equals(obj)

1) 특징

  • 객체 간의 동일 비교를 하는 메소드 (obj 객체가 자신의 객체와 같으면 true, 다르면 false)
  • Object 클래스에 정의된 equals() 는 참조변수 값(객체의 주소)을 비교한다
  • 보통 equals()를 오버라이딩해서 인스턴스 변수의 값을 비교하도록 바꿔서 사용한다

 

2) 예제

 

 

 

2-4. toString()

1) 특징

  • 객체 정보를 문자열로 반환하는 메소드

 

2) 예제

+ Recent posts