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
'c#' 카테고리의 다른 글
[C#] 이벤트 핸들러 (0) | 2023.01.11 |
---|---|
[C#] Delegate (0) | 2023.01.10 |
[Unity] 기본 정리 (문서화) (0) | 2023.01.09 |
[C#] 상속 protected (0) | 2023.01.09 |
[C#] 클래스 생성자 오버로딩 (0) | 2023.01.09 |