[Java] equals 메서드를 오버라이딩 하는 이유
일반적으로 우리는 서로 같은 인스턴스인지 비교하기 위해 Object클래스에 정의돼있는 equals() 메서드를 사용하곤 한다. 그러나 프로그래밍을 하다 보면 equals메서드를 재정의해서 사용하는 것을 심심찮게 볼 수 있다. 그렇다면 우리가 equals메서드를 오버라이딩 해서 사용하는 이유는 무엇일까? 말 그대로 Object클래스에서는 equals 메서드를 실행시킨 참조변수와 매개변수로 주어진 변수와의 주소값만을 비교한다. 실제 Object클래스에 정의돼있는 equals메서드이다. 코드를 보면 알 수 있듯이 단순히 메서드를 실행시킨 참조변수 this와 매개변수로 주어진 obj와의 단순 주소값만을 비교한다. 그러나 일반적으로 우리가 문자열의 값을 비교할때도 equals를 사용하는데 이는 String 클래스..
2023.04.26