[C#] interface vs abstract class 본문
* 인터페이스(interface)
메서드, 이벤트, 인덱서(인덱스를 이용해서 객체 내의 데이터에 접근하게 해주는 프로퍼티), 프로퍼티만 가질 수 있다. (구현을 가질 수 없다.)
클래스, 인터페이스에서 상속 가능함
여러 개의 인터페이스 한꺼번에 상속 가능
* 추상 클래스 (abstract class)
구현을 가질 수 있으나 일반 클래스와 달리 인스턴스를 가질 수 없다.
여러 개의 클래스를 한꺼번에 상속할 수 없음 (죽음의 다이아몬드 문제)
- up-casting 때문에 할아버지 클래스를 두 개의 파생 클래스가 상속하고, 이 두 개의 파생 클래스를 하나의 자식 클래스가 상속하게 될 경우 모호해진다.
'프로그래밍 > C#' 카테고리의 다른 글
[C#] GC (Garbage Collection) (0) | 2020.06.29 |
---|---|
[C#] 프로퍼티 (0) | 2020.06.28 |
[C#] Generic을 쓰자 (0) | 2020.06.28 |
Comments
Copyright ⓒ dub All Rights Reserved.