728x90
이펙티브 잡
-
모든 객체의 공통 메서드 - 아이템 10. equals는 일반 규약을 지켜 재정의하라Study/Effective Java 2022. 12. 13. 17:16
equals는 일반 규약을 지켜 재정의하라 equals를 재정의하면 안 되는 경우 1. 각 인스턴스가 본질적으로 고유한 경우 값을 표현하는 게 아니라 동작하는 개체를 표현하는 클래스가 여기에 해당한다. Thread가 좋은 예로, Object의 equals() 메서드는 이러한 클래스에 딱 맞게 구현되었다. 2. 인스턴스의 '논리적 동치성'을 검사할 일이 없는 경우 public class Main { public static void main(String[] args) { final Pattern p01 = Pattern.compile("//.*"); final Pattern p02 = Pattern.compile("//.*"); System.out.println(p01.equals(p02)); // fal..