abstract vs virtual
abstract 키워드
abstract 키워드로 표시한 속성이나 메서드는 파생 클래스에서 반드시 구현해야 한다.
abstract 키워드를 속성 또는 메서드에 사용하려는 경우, 해당 클래스가 반드시 abstract로 표시되어 있는 클래스여야 한다.
abstract 클래스는 인스턴스화 할 수 없다.
사용목적은 여러개의 파생 클래스에서 공유할 기본 클래스의 공통적인 정의를 제공하기 위해서이다.
virtual 키워드
메서드, 속성, 이벤트 선언을 한정하는데 사용된다.
파생 클래스에서 필요에 따라 재정의(override)할 수 있지만, 필수는 아니다.
'개발 > C#' 카테고리의 다른 글
[C#] string.isnullorempty vs string.isnullorwhitespace (0) | 2018.03.14 |
---|---|
구조체(struct) vs 클래스(class) (0) | 2018.03.14 |
IEnumerable과 IEnumerator 인터페이스 (0) | 2018.03.02 |
static 정적멤버 / 정적클래스 (0) | 2018.03.01 |
const vs readonly (0) | 2018.02.08 |