클래스에 적용된 경우 sealed 한정자는 다른 클래스가 해당 클래스에서 상속하지 못하도록 한다.
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
public class Parent
{
}
public sealed class Derived : Parent
{
}
public class AnotherDerived : Derived
{
}
public class Test
{
public static void Main()
{
AnotherDerived anotherDerived = new AnotherDerived();
}
}
함수 같은 경우에는 가상 함수 오버라이딩 방지용으로 쓰여진다.
using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
public class Parent
{
public virtual void Print()
{
Console.WriteLine("Parent Class");
}
}
public class Derived : Parent
{
public override sealed void Print()
{
Console.WriteLine("Derived Class");
}
}
public class Another:Derived
{
public override void Print()
{
}
}
public class Test
{
public static void Main()
{
}
}
'프로그래밍 언어 > C#' 카테고리의 다른 글
C# 클래스 타입 업/다운 캐스팅 (Up-DownCasting) (0) | 2022.07.22 |
---|---|
C# 읽기 전용 (readonly) (0) | 2022.07.21 |
C# 중첩 클래스 (Nested Class) (0) | 2022.07.20 |
C# 부분 클래스 (partial) (0) | 2022.07.19 |
C# 인덱서 (Indexer) (0) | 2022.07.19 |