다중상속
다중상속(multi inheritance)
둘 이상의 클래스를 동시에 상속하는 것을 다중상속 이라고 한다.
예를 들어 다음 예제는 Person, Student, Employee, PartTimeStudent 클래스로 구성되어 있습니다. 다음과 그림과 같은 구조로 상속됩니다.
Person 클래스
순수가상함수를 포함하는 추상클래스입니다.
Student 클래스
Person 클래스를 상속하며 순수가상함수를 재정의(overriding)하는 상세클래스입니다.
Employee 클래스
Person 클래스를 상속하며 순수가상함수를 재정의(overriding)하는 상세클래스입니다.
PartTimeStudent 클래스
Student 클래스와 Employee 클래스를 모두 상속하는 다중상속 구조의 클래스입니다. 이때 Person 클래스가 중복상속 됩니다.
중복상속
중복상속된 Person객체의 경우 Student::name 과 Employee::name 변수는 서로 다른 공간에 할당됩니다.
sayName()함수 처럼 중복된 메서드가 있는 경우에도 실행이 모호하기 때문에 실행할 부모클래스를 명시하여 호출하여야 합니다.
main함수
Last updated