-
추상클래스(Adstract Calss)Programing/C# 2009. 3. 29. 18:39
추상클래스는 미완성클래스로 스스로 객체 생성이 불가능한 클래스이다.
몸체가 없는 메서드를 포함하거나 abstract 키워드를 포함하는 클래스가 추상클래스가 되는데
이러한 추상클래스를 상속받는 새로운 클래스가 몸체없는 메서드 즉, 추상메서드들을 모두 채워넣어야 객체로 생성 할 수 있게 된다.
상속받은 클래스에서는 overrid키워드를 사용하여 메서드를 재정의하게 된다.
아래는 추상클래스를 이용하여 코딩하는 한 예이다. (출처 : http://www.jabook.com )
using System;
public abstract class Shape{
public abstract void draw();
}
public class Circle: Shape{//추상클래스의 구현
public override void draw() {
Console.WriteLine("원을 그립니다");
}
}
public class Rect: Shape{//추상클래스의 구현
public override void draw() {
Console.WriteLine("사각형을 그립니다");
}
}
public class ShapeTest{
public static void Main(){
Circle cir = new Circle();
Rect rec = new Rect();
cir.draw();//원그리기
rec.draw();//사각형 그리기
}//main
}
추상클래스는 프로그램의 설계 단계에서 많이 쓰인다.
독자적으로 사용되는 클래스는 아니지만, 프로그램 상황에 맞는 계층적인 모델을 설계하도록 하는 역할을 추상클래스가 하고 있다.
'Programing > C#' 카테고리의 다른 글
c# 마샬링 (0) 2011.07.01 DispatcherTimer 현재 시간 갱신 (1) 2010.11.05 c# 에서의 using (0) 2009.04.24 KeyValuePair 사용하기 (0) 2009.04.09 Invoke() 메서드 (0) 2009.03.20 스트림(Stream) (0) 2009.03.19 스레드 사용하기 (0) 2009.03.19 연결형 스트림 소켓과 비연결형 데이터그램 소켓 (0) 2009.03.18 IPHostEntry 와 IPEndPoint (0) 2009.03.18 생성자에서의 this 와 base (0) 2008.08.27