클래스의 행위(동적) 정보에 맞춰 클래스를 설계 (상속) 하는 방법에 대해 알아보자 수평적 구조는 중복 발생, 유지보수의 여러움, 확장성 떨어짐 과 같은 많은 문제가 있다. ->그래서 수직적 구조를 쓴다. 부모가 중복 부분을 만들고, 자식들은 상속 받으면 된다. 부모와 자식을 연결해 부모를 이용, 자식을 동작시킬 수 있는 원리로 클래스를 설계 해야한다. 자식 클래스를 숨기고 바깥쪽에 있는 부모로 자식을 동작 시킬 수 있는 방법 -> 상속 상속 구조를 왜 쓸까? - 코드 중복 최소화, 메서드 재활용 부모 클래스를 통제하면 자식들도 통제된다. 부모에 의해 자식들의 동작 방법이 달라진다. Dog 클래스 사용 시 만든 사람은 동작구조를 알지만 사용하는 사람은 모른다. 왜? 소스코드를 노출시키지 않기 때문 - 다..