기존 클래스의 기능을 물려받아 새로운 기능을 확장하는 상속의 핵심 개념을 정리했다.
코드 재사용성을 높이고 객체 간 논리적 계층 구조를 형성하여 시스템을 체계적으로 설계했다.
부모 멤버를 재사용하면서 자식만의 기능을 추가해 중복 없는 효율적인 코드를 작성했다.
업캐스팅을 통해 다형성을 구현하고 가상 함수 오버라이딩으로 동적 동작을 완성했다.
클래스 간 관계가 “is-a 관계”를 만족하는지 철저히 검토하여 구조적 결함을 방지했다.
공통 로직을 부모 클래스로 통합해 유지보수 지점을 단일화하고 시스템 구조를 정돈했다.
상속 계층의 복잡도를 관리하기 위해 포함 관계와 적절히 병행하는 유연한 설계를 실천했다.
상속이 단순한 코드 복사가 아닌 객체 간의 약속과 책임을 정의하는 과정임을 깨달았다.
변화에 유연하고 확장성이 뛰어난 아키텍처를 구축하기 위해 상속 전략을 정교하게 다듬었다.
객체지향 설계의 진수를 맛보며 대규모 시스템을 지탱하는 구조적 원리를 깊이 이해했다.