아이템 18

    [Effective Java] item 18. 상속보다는 컴포지션을 사용하라 *

    본문은 Effective Java를 읽고 정리한 내용을 기반으로 작성된 글입니다. 상속은 코드를 재사용하는 강력한 수단이지만, 항상 최선은 아니다. 다른 패키지의 구체 클래스를 상속하는 일은 위험하다. [메서드 호출과 달리 상속은 캡슐화를 깨뜨린다] : 상위 클래스가 어떻게 구현되느냐에 따라 하위 클래스가 오동작할 수 있다. ☑️ HashSet를 상속받은 클래스 InstrumentedHashSet public class InstrumentedHashSet extends HashSet { // 추가된 원소의 수 private int addCount = 0; @Override public boolean addAll(Collection