Animal과 Dog, public 상속, protected 멤버, 생성자 호출 순서를 연결하면 is-a 관계의 비용이 보입니다.
Dog가 Animal의 속성을 쓰는 식으로 중복을 줄입니다.
인터페이스 보존이 목적일 때 가장 흔한 형태입니다.
상속 확장성을 주지만 내부 구조 노출이 늘어납니다.
자원 초기화와 해제 순서를 예측할 때 중요한 규칙입니다.