Effective Java - 상속과 합성
·
Book/DEV
상속보다는 합성을 우선시하자 상속은 도형 - 동그라미 관계에서 도형은 각, 면적, 기타 등의 필드가 존재한다. 상속은 캡슐화를 깨트릴 우려가 있다. ➡️ 캡슐화가 깨진다? : 상위 클래스를 수정하였을 때 하위 클래스에 미치는 영향이 생긴다는 뜻에서 캡슐화가 깨진다고 묘사 또한 상속을 이용하게 되면 상위 클래스에 변경이 생기게 될 경우 상속받은 모든 하위 클래스에서 변경이 일어난다. 순수한 is-a 관계에서만 상속을 사용하고, 그 외의 경우에는 합성을 사용하는 것이 바람직하다 자바 9 이상부터 정적 팩토리 메서드를 지원한다. Arrays.asList 안 쓰고 List.of, Map을 새로 생성 할 때는 Map.of을 사용하자. 다만 불변 객체가 되기 때문에 UnsupportedOperationExcepti..