목록clone (1)
주니어 개발자 성장기
아이템 13. Clone 재정의는 주의해서 진행하라.
구현 - 불변 객체 Cloenable은 텅 비어 있는 인터페이스지만 clone을 이용하려면 반드시 구현(implements)해주어야 한다. 그 다음 clone 메서드를 super.clone을 사용해 오버라이딩해줘야 한다. 접근 제한자는 public 으로 설정, 반환 타입은 자신의 클래스로 변경한다. Clone 규약 x.clone() != x clone 반드시 원본과 다른 인스턴스를 반환해야 한다. (레퍼런스 자체가 달라야한다.) x.clone().getClass() == x.getClass()가 반드시 true이여야 한다. 원본의 클래스와 동일한 인스턴스를 반환해야 한다. x.clone().equals(x)가 true가 아닐 수도 있다. 복사를 한 인스턴스가 원본과 달라야만 한다면 true가 아닐수도 있..
Java/이펙티브 자바
2023. 9. 2. 15:08