여기서 말하는 상속은 다른 클래스를 확장하는 구현 상속입니다. 상속의 문제점 메서드 호출과 달리 상속은 캡슐화를 깨뜨립니다. 상위 클래스는 내부 구현이 달라질 수 있으며, 이로 인해 하위 클래스의 동작에 이상이 생길 수 있습니다. 또한, 자기사용(self-use) 여부에 따라 상속한 클래스에서 원하는 결과를 얻지 못 할 수도 있습니다. 또한 자기사용 여부는 다음 버전에서 유지될지 알 수 없습니다. public class BadHashSet extends HashSet { //추가 된 원소 수 private int addCount = 0; @Override public boolean add(E e) { addCount++; return super.add(e); } @Override public boolea..