This is a blog.

자바 기록 13일차 본문

JAVA/Book Summary

자바 기록 13일차

Calcot 2021. 6. 17. 19:29

혼자 공부하는 자바 / 저자 : 신용권.

chapter11. 기본 API 클래스 정리-1.

 

 

기본 API 클래스-1

 

 

Object 클래스

자바의 모든 클래스는 Object 클래스의 자식이거나 자손 클래스이다.

Object는 자바의 최상위 부모 클래스에 해당한다.

 

객체 비교(equals())

- public boolean equals(Object obj){ ... }

equals() 메소드의 매개 타입은 Object = 모든 객체가 매개값으로 대입될 수 있다.

Object 클래스의 equals() 메소드는 비교 연산자인 ==과 동일한 결과를 리턴한다.

두 객체가 동일한 객체라면 true를 리턴, 그렇지 않으면 false를 리턴.

String 객체의 equals() 메소드는 문자열이 동일한지 비교하는 것.

=> 같으면 true, 다르면 false.

일반적으로 Objectequals()메소드는 직접 사용되지 않고 하위 클래스에서 재정의하여 논리적으로 동등 비교할 때 이용.

instacneof 연산자로 기준 객체와 동일한 타입인지 제일 먼저 확인한다.

 

객체 해시코드(hashCode())

객체를 식별하는 하나의 정수값.

hashCode() 메소드를 실행해서 리턴된 해시코드 값이 같은지 확인 -> 해쉬코드 값이 다르면 다른 객체로 판단 -> 해쉬코드 값이 같으면 equals()메소드로 다시 비교.

=> hashCode() 메소드가 true가 나와도 equals()의 리턴값이 다르면 다른 객체가 됨.

객체의 동등 비교를 위해서는 Objectequals()메소드만 재정의하지 말고 hashCode() 메소드도 재정의해서 논리적으로 동등한 객체일 경우 동일한 해시코드가 리턴되도록 해야 한다.

 

'JAVA > Book Summary' 카테고리의 다른 글

자바 기록 12일차  (0) 2021.06.15
자바 기록 11일차  (0) 2021.06.14
자바 기록 10일차  (0) 2021.06.10
자바 기록 9일차  (0) 2021.06.09
자바 기록 8일차  (0) 2021.06.08
Comments