상속
상속(inheritance)이란 기존 상위 클래스의 속성과 기능을 가져다 하위 클래스에서 재사용하는 것을 의미합니다. 예를 들어 새는 날기, 걷기, 먹기만 할 줄 안다고 생각했는데 뛸 수 있는 새가 발견돼 이 새를 ‘뛰는 새’라는 클래스로 정의한다고 합시다. ‘뛰는 새’는 기존 새의 속성과 기능을 모두 가진 상태에서 ‘뛰기’라는 기능만 추가하면 되기 때문에 ‘새’ 클래스를 상속받아 만들 수 있습니다. 이렇게 만들어진 ‘뛰는 새’ 클래스는 ‘새’ 클래스와 is-a 관계(is-a relationship)를 이룹니다.
그림 3-4 ‘새’ 클래스의 상속