variable usar son qué programacion modificador metodos los estáticos estaticos estaticas cuando clases clase atributos c# .net oop static sealed

c# - usar - Diferencias de clase estáticas y selladas



static programacion (5)

1 - No, no puedes implementar una clase estática.

2 - No, no puedes heredar de una clase estática o sellada

  1. ¿Hay alguna clase que se implemente en clase estática? medio:

    static class ABC : Anyclass

  2. ¿Hay alguna clase que pueda heredarse tanto en clase sellada como en clase estática?
    medio:

    static class ABC : AClass {}

    Y

    sealed class ABC : AClass {}

¿Puedo equivocarme en cierta medida?


En palabras simples

Clase estática

Una clase puede declararse estática, lo que indica que solo contiene miembros estáticos. No es posible crear instancias de una clase estática con la nueva palabra clave. El .NET Framework Common Language Runtime (CLR) carga automáticamente las clases estáticas cuando se carga el programa o el espacio de nombres que contiene la clase.

Clase sellada

Una clase sellada no se puede usar como una clase base. Las clases selladas se usan principalmente para evitar la derivación. Debido a que nunca se pueden usar como una clase base, algunas optimizaciones de tiempo de ejecución pueden hacer que llamar a miembros de clase sellados sea un poco más rápido.


Esto puede ayudarte:

+--------------+---+-------------------------+------------------+---------------------+ | Class Type | | Can inherit from others | Can be inherited | Can be instantiated | |--------------|---|-------------------------+------------------+---------------------+ | normal | : | YES | YES | YES | | abstract | : | YES | YES | NO | | sealed | : | YES | NO | YES | | static | : | NO | NO | NO | +--------------+---+-------------------------+------------------+---------------------+


Puede dejar que una clase sealed herede de otra clase, pero no puede heredar de una clase sealed :

sealed class MySealedClass : BaseClass // is ok class MyOtherClass : MySealedClass // won''t compile

Una clase static no puede heredar de otras clases.


respuesta simple es Una clase sellada no se puede usar (como) una clase base.

Intento mostrarle que Sealed Class es una clase derivada en el código siguiente

public sealed class SealedClass : ClassBase { public override void Print() { base.Print(); } }

y otra característica sellada es solo acceso con instancia de la misma. Por ejemplo

class Program { static void Main(string[] args) { SealedClass objSeald = new SealedClass(); objSeald.Name = "Amin Saadati"; objSeald.Print(); } }

Las clases selladas se usan para restringir la característica de herencia de la programación orientada a objetos. Una vez que una clase se define como una clase sellada, la clase no se puede heredar. En C #, el modificador sellado se usa para definir una clase como sellada. En Visual Basic .NET, la palabra clave NotInheritable sirve para sellar.