Statikus konstruktor

Filed Under (kód) by nameless on 15-07-2009

Tagged Under :

statikus konstruktor:

using System;
 
namespace Program
{
    class MainClass
    {
        public static void Main()
        {
 
            EntryPoint e = new EntryPoint(34.556);
            Console.WriteLine(EntryPoint.currInterestRate); // statikus konstruktor
            Console.WriteLine(e.currBalance); //sima konstruktor
 
 
            Console.ReadKey();
        }
    }
 
    class EntryPoint
    {
        public double currBalance;
        public static double currInterestRate;
 
        public EntryPoint(double balance)
        {
            currBalance = balance;
        }
 
        static EntryPoint()
        {
            Console.WriteLine("In static ctor!");
            currInterestRate = 0.04;
        }
    }
}

A statikus konstruktor egy olyan speciális konstruktor, amely ideális helyet biztosít a statikus adatok kezdőértékeinek beállítához akkor, ha az érték nem ismeretes a fordítás idején (pl. egy külső fájlból kell beolvasni, vagy véletlenszerű számot kell létrehozni, stb.).

- Egy adott osztály (vagy struktúra) csak egy statikus konstruktort határozhat meg.

- Egy statikus konstruktor nem vesz fel hozzáférési módosítót, és nem vehet fel paramétereket.

- Egy statikus konstruktor végrehajtása pontosan egyszer történik meg.

- A futtatórendszer meghívja a statikus konstruktort, amikor az létrehozza az osztály egy példányát, vagy mielőtt hozzáfér a hívó által aktivizált első statikus taghoz.

- A statikus konstruktor végrehajtása megelőzi a példányszintű konstruktorokét.

Post a comment