인터페이스에서는 실제 동작을 수행하는 구현 클래스를 작성해야 했다. 인터페이스에 메소드가 많다면, 사용하지 않는 메소드를 재정의하는 데 시간을 낭비할 수 있다.
추상클래스는 인터페이스의 역할과 비슷해서 서비스 공급자와 클라이언트 간의 계약을 제공하지만, 부분 구현을 제공할 수 있다. 명시적으로 재정의해야 하는 메소드는 abstract로 선언한다.
추상 클래스의 인스턴스를 생성할 수 없기 때문에 여전히 구현 클래스를 생성해야 하지만, 사용하거나 변경하고 싶지 않은 메소드는 재정의할 필요가 없다. 클래스 선언에서 abstract 한정자를 사용해 추상 클래스를 생성한다.
추상 메소드를 생성하려면, 메소드 선언 앞에 abstract 한정자를 사용한다. 다음은 DefaultPrinter 추상 클래스이다. public abstract class DefaultPrinter { public string GetDescription() { return "Use this to print document...
#
abstract
#
C샵
#
씨샵
#
추상클래스
원문 링크 : [C#] 추상클래스