Static
Static är inte en åtkomstmoderator utan en modifierare. Det gör att en klass, metod eller egenskap är tillgänglig för alla klasser i samma projekt.
Innehållsförteckning
Beskrivning
Static klasser instansieras vid programstart och det finns bara en instans tillgänglig under körningen. Detta är bra om vi vill dela data mellan flera klasser i samma projekt. Detta är också bra om vi vill ha en klass som bara innehåller statiska metoder och egenskaper.
Exempel
public static class UserSettings
{
public static string UserName { get; set; }
public static int Password { get; set; }
public static bool DarkMode { get; set; }=true;
}
I detta exempel har vi en klass som heter UserSettings. Vi har också tre egenskaper, UserName, Password och DarkMode. Alla är statiska, vilket innebär att de är tillgängliga för alla klasser i samma projekt. Även om UserName, Password och DarkMode borde vara tillgängliga för alla projekt som länkar sig till detta projekt, kommer de inte att vara tillgängliga för klasser i andra projekt på grund av att UserSettings-klassen är statisk.
Static är “publik” enbart för klasser i samma projekt. Detta innebär att om vi har en annan klass i ett annat projekt som länkar till detta projekt, kommer den inte att kunna använda UserSettings-klassen.