Guía de programación de C#
Constructores estáticos (Guía de programación de C#)

Un constructor estático se utiliza para inicializar cualquier dato estático o realizar una acción determinada que sólo debe realizarse una vez. Es llamado automáticamente antes de crear la primera instancia o de hacer referencia a cualquier miembro estático.

C#
class SimpleClass
{
    // Static constructor
    static SimpleClass()
    {
        //...
    }
}

Los constructores estáticos tienen las propiedades siguientes:

  • Un constructor estático no permite modificadores de acceso ni tiene parámetros.

  • Se le llama automáticamente para inicializar la clase antes de crear la primera instancia o de hacer referencia a cualquier miembro estático.

  • El constructor estático no puede ser llamado directamente.

  • El usuario no puede controlar cuando se ejecuta el constructor estático en el programa.

  • Los constructores estáticos se utilizan normalmente cuando la clase hace uso de un archivo de registro y el constructor escribe entradas en dicho archivo.

  • Los constructores estáticos también son útiles al crear clases contenedoras para código no administrado, cuando el constructor puede llamar al método LoadLibrary.

Ejemplo

En este ejemplo, la clase Bus tiene un constructor estático y un miembro estático, Drive(). Cuando se llama a Drive(), se invoca el constructor estático para inicializar la clase.

C#
public class Bus
{
    // Static constructor:
    static Bus()
    {
        System.Console.WriteLine("The static constructor invoked.");
    }

    public static void Drive()
    {
        System.Console.WriteLine("The Drive method invoked.");
    }
}

class TestBus
{
    static void Main()
    {
        Bus.Drive();
    }
}
Resultado

The static constructor invoked.

The Drive method invoked.

Vea también

Referencia

Objetos, clases y estructuras (Guía de programación de C#)
Destructores (Guía de programación de C#)

Conceptos

Guía de programación de C#

Otros recursos

Constructores (Guía de programación de C#)

Etiquetas :


Page view tracker