내가 보려고 정리하는 블로그

Object클래스의 메소드 본문

Java/Java API

Object클래스의 메소드

jihoon De 2019. 5. 22. 22:50

1.toString() 메소드

toString()메소드는 해당 인스턴스에 대한 정보를 문자열로 반환한다.

이때 반환되는 문자열을 클래스 이름과 함께 구분자로 '@'가 사용되며, 그 뒤로 16진수 해시 코드가 추가된다.

16진수 해시 코드의 값은 인스턴스의 주소를 가리키는 값으로, 인스턴스마다 모두 다르게 반환된다.

인스턴스의 값은 힙 메모리에 저장이 되는데 그때 힙메모리의 값이 저장되어 있는 주소가 반환되는 것.

(자바에서 toString()메소드는 기본적으로 각API클래스마다 자체적으로 오버라이딩을 통해 재정의되어 있다.)

 

2.equals()메소드

equals()메소드는 해당 인스턴스를 매개변수로 전달받는 참조 변수와 비교하여, 그 결과를 반환합니다.

이때 참조 변수가 가리키는 값을 비교하므로, 서로 다른 두 객체는 언제나 false를 반환한다

equals()메소드는 주소의 값을 비교하는 것이 아닌 객체의 값으로만 비교를 한다.

(자바에서 equals()메소드는 기본적으로 각API클래스마다 자체적으로 오버라이딩을 통해 재정의되어 있다.)

 

3.clone()메소드 

clone()메소드는 해당 인스턴스를 복제하여, 새로운 인스턴스를 생성해 반환한다.

하지만 Object클래스의 clone()메소드는 단지 필드의 값만을 복사하므로,  필드의 값이 배열이나

인스턴스면 제대로 복사를 할 수 없다.

 

 

 

Comments