Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 자료구조
- 자바개발
- JVM
- 클린코드
- 자바
- 알고리즘공부
- 가비지컬렉션
- 알고리즘
- 예외처리
- 개발자취업
- 코딩테스트
- 코딩공부
- 자바공부
- 파이썬
- HashMap
- 코딩테스트팁
- 개발공부
- 코딩인터뷰
- 멀티스레드
- 프로그래밍기초
- 메모리관리
- 자바기초
- 객체지향
- 코딩테스트준비
- 프로그래머스
- Java
- 백준
- 개발자팁
- 자바프로그래밍
- 정렬
Archives
- Today
- Total
목록toString (1)
코드 한 줄의 기록
가장 먼저 결론부터 말하면, “도메인 모델의 동등성은 일관되고 예측 가능해야 하며, 컬렉션에 넣는 순간부터 계약을 끝까지 지켜야 한다.” 이 문장을 머리에 박아두면 equals/hashCode/toString을 설계할 때 흔들리지 않는다. 아래 내용은 실무에서 부딪혔던 함정과 Lombok으로 편하게 작성할 때 생기는 미묘한 위험까지 담았다.왜 equals/hashCode/toString이 중요한가자바에서 객체는 기본적으로 참조 동일성(==)을 기준으로 비교된다. 하지만 비즈니스 로직에서는 “같은 의미”를 갖는 객체를 값으로 다루고 싶을 때가 많다. 예를 들어, 같은 주민등록번호의 User는 같은 사람이다. 이때 equals와 hashCode를 “의미 기반”으로 재정의하면, Set이나 Map 같은 컬렉션이..
JAVA
2025. 10. 12. 08:08