c#
[C#] 추상클래스
바르마스
2023. 1. 10. 10:34
728x90
abstract 키워드를 사용하면 파생클래스에서 구현해야하는 클래스 및 클래스 멤버를 만들 수 있다
sealed 키워드를 사용하면 이전에 virtual로 표시되었던 클래스나 특정 클래스 멤버의 상속을 방지한다 (봉인 클래스)
abstract class Ch_24_Parent
{
public void parentMessage()
{
Console.WriteLine("부모클래스 메소드입니다");
}
abstract public void message();
}
class Ch_24_child : Ch_24_Parent
{
public override void message()
{
string str1 = "Ch_2_Child";
string str2 = "추상클래스를 상속 받았습니다";
Console.WriteLine(str1 + str2);
}
}
static void Main(string[] args)
{
Ch_24_child ch = new Ch_24_child();
ch.parentMessage();
ch.message();
Ch_24_child ch2 = new Ch_24_child();
ch2.message();
}
추상클래스는 인스턴스화 할 수 없다
추상클래스의 목적은 여러 파생 클래스에서 공유할 수 있는 기본 클래스이 공통적인 정의를 제공하는 것이다
파생클래스에서 sealed override 하게되면 이후에 파생되는 클래스에서 재정의 할수 있다
728x90