inflearn logo
강의

講義

知識共有

Java基礎からマスターする with ウンジョン先生 (Do it Javaプログラミング入門) - Part 2(マスター編)

Objectクラスとメソッド

섹션 1 - 1 equals 재정의 하면 왜 hashcode도 재정의 해야하는지..

237

JunSuPark

投稿した質問数 8

0

섹션 1 - 1 강의 내용.

왜 equals 재정의 했다면 왜 hascode 도 재정의 해야하는지 이해가 되지 않습니다.

java 객체지향 알고리즘

回答 1

1

eunjong

두 객체가 같다는것의 원래 정의는 같은 인스턴스 입니다. 같은 인스턴스는 곧 메모리 주소가 같은데, 자바에서는 이 메모리 주소를 hashCode 라고 합니다. hashCode()메서드가 재정의 되어 있지 않은 경우 인스턴스의 hashCode() 메서드의 반환값은 인스턴스 주소의 10진수 값이 됩니다.

그런게 두 객체가 같다는 논리적 정의인 equals()를 재정의 한 경우에 가령, 학번이 같다, Integer 객체의 숫자 값이 같다 와 같은 경우 equals()는 같은데, hashCode()가 재정의 되어 있지 않다면 논리적으로 같은객체의 다른 hashCode 값이 반환되는 것입니다. 따라서 Integer와 같은 경우는 해당되는 숫자 값을, 학생의 경우 학번을 반환해주도록 hashCode()메서드를 재정의 해주는 것입니다.

싱글턴패턴

0

2

1

이진 탐색 문제 질문드립니다

0

248

1

ChatRoom에서 synchronized 사용 이유

0

477

1

미로찿기 질문드립니다

0

304

2

socket 질문드립니다

0

280

1

지역 내부 클래스 질문드립니다.

0

204

1

큐 구현하기 질문드립니다

0

322

2

수업자료

0

175

1

컬렉션 프레임워크에서 get()

0

264

2

synchronized 과정

0

201

1

awt 패키지 접근 불가 에러

0

518

1

iterator 관련 질문입니다.

0

239

1

수업 중간에 메소드 정의 보시는거 어떻게 하는지 알 수 있을까요?

1

287

2

예외처리 질문드려요

0

393

1

멀티 쓰레드 동기화 관련 질문입니다!

1

407

1

Generic 강의중 궁금한점

0

377

1

여러 가지 보조 스트림 클래스들

0

314

1

교재내용

0

334

1

힙메모리

0

443

1

미로찾기 문제에 VISIT의 쓰임

1

485

2

입출력 스트림 질문입니다.

0

271

1

알고리즘 강의는 무슨언어로 진행하시나요? 혹시 자바로 하시나요?

0

401

2

강의 화면의 깃랩은 어떻게 들어가나요?

0

686

2

강의가 잘못 업로드 되어 있습니다.

1

425

2