コンパイラ エラー CS0418

更新 : 2007 年 11 月

エラー メッセージ

'クラス名': 抽象クラスを static または sealed に指定することはできません。

抽象クラスは、継承することによって初めてオブジェクトを作成できるため、抽象クラスをシールすることは無意味です。また、同様の理由により、抽象クラスを static として宣言することも意味をなしません。オブジェクト階層上、抽象クラスは、基本クラスとして使用することが前提となっています。

使用例

次の例では CS0418 エラーが生成されます。

// CS0418.cs
public abstract sealed class C  // CS0418
{
}

sealed static class S  // CS0418
{
}

public class MyClass
{
    public static void Main()
    {
    }
}