나의 지식 보관소
죽음의 다이아몬드 본문
죽음의 다이아몬드란 하나의 부모 클래스를 두 개의 자식 클래스가 상속받고, 이 두 개의 자식 클래스를 다시 하나의 자식 클래스가 상속하는 것을 말한다.
다음 그림에서 혼종은 "멍!"하고 짖을까? "냥!"하고 짖을(?)까? 이러한 모호성이 죽음의 다이아몬드 문제의 핵심이다.
때문에 c#은 클래스의 다중상속을 허용하지 않는다. 하지만 인터페이스는 구현을 생략한 선언만 물려주기 때문에 이러한 문제가 발생되지 않아 인터페이스는 다중 상속이 가능하다.
'프로그래밍 언어 > C#' 카테고리의 다른 글
프로퍼티 (0) | 2020.01.10 |
---|---|
추상 클래스 (0) | 2019.12.28 |
인터페이스 interface (0) | 2019.12.28 |
확장 메서드 (0) | 2019.12.28 |
메서드 오버라이딩 / 메서드 숨기기 (0) | 2019.12.28 |