차례:
정의-다중 상속이란 무엇입니까?
다중 상속 클래스 또는 객체가 둘 이상의 부모 클래스 또는 객체에서 특성과 속성을 상속하는 일부 객체 지향 프로그래밍 언어의 기능입니다. 이것은 객체 또는 클래스가 하나의 특정 객체 또는 클래스에서 상속 할 수있는 단일 상속 속성과 반대입니다. 다중 상속과 관련된 특정 이점이 있지만 올바르게 설계 또는 구현되지 않으면 모호성과 복잡성이 증가합니다.
Techopedia는 다중 상속을 설명합니다
단일 상속과 달리 다중 상속에는 상속 관점에서 대칭 병합 및 비대칭 확장이 있습니다. 한 세트의 특성이 다른 세트의 특성에 의존하지 않으면 다중 상속이 더 유리할 것입니다. 즉, 객체의 특성을 직교 집합으로 분리 할 수있는 경우 다중 상속이 더 유용합니다. 다중 상속은 어댑터 패턴의 경우에 유용합니다. 하나의 인터페이스를 다른 인터페이스로 조정할 수 있습니다. 다중 상속의 또 다른 이점은 관찰자 패턴과 관련이 있습니다. 이 패턴에서 호출은 함수 중 하나를 호출하여 일부 변경에 의해 통지 될 수있는 함수 / 관찰자 목록을 유지할 수 있습니다. 다중 상속을 지원하는 프로그래밍 언어의 예로는 C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp 및 Tcl이 있습니다. Java는 다중 상속을 지원하지 않는 가장 유명한 프로그래밍 언어 중 하나입니다.
그러나 다중 상속과 관련된 몇 가지 단점이 있습니다. 이 기능은 메소드 디스패치를 복잡하게하고 애플리케이션에 대한 추가 조사를 제공합니다. 다중 상속은 특히 메소드 선택과 관련된 종속성에 대한 인식이 필요합니다. 또한 다중 상속을 사용하는 프로토콜은 단일 상속을 사용하는 프로토콜보다 더 많은 문서가 필요합니다.