
WEB(BE)/Spring & Spring Boot
JAVA 값 객체의 동등 비교 ('==' 과 equals() 의 차이)
개발하다가 코드 리뷰를 받으면서 들었던 의문점엔티티 필드에 값 객체가 존재하고, 외부에서 값 객체가 주어질 때, 해당 값 객체의 값과 엔티티가 갖고있는 값 객체의 값이 같은지 판별해야 하는 메서드를 작성할 일이 생겼다. 나는 단순하게 값 객체의 필드를 하나 하나 꺼내서 비교하는 메서드를 그냥 작성했는데, 리뷰로는 `equals()` 메서드를 사용하면 된다는 리뷰를 받았다. 코드를 작성할 땐 막연히 `equals()를 사용하면 참조비교하겠지?` 정도로만 생각해서 하나씩 세부 필드를 꺼내서 비교하는 코드를 작성했는데, 그 차이점을 직접 비교해보려고 한다. GPT 가 알려준 것GPT는 값 객체를 비교할 때 equals 메서드를 오버라이딩 하는 것을 추천하고 있다.구글링 해봤을 때도 다른 블로그들이 모두 비슷하..