Error del compilador CS0418

Actualización: noviembre 2007

Mensaje de error

'nombre de clase': una clase abstract no puede ser sealed ni static
'class name': an abstract class cannot be sealed or static

No se puede utilizar una clase abstract para crear objetos a menos que se trate de clases derivadas de ella, por lo que no tiene ningún sentido que sea sealed. Tampoco tiene sentido que una clase abstract sea estática; las clases abstractas están diseñadas para admitir una jerarquía de objetos que utilizará la clase abstracta como clase base.

Ejemplo

En el código siguiente se genera el error CS0418:

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

sealed static class S  // CS0418
{
}

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