Static - это ключевое слово, которое используется для объявления статических членов в классе. Статические члены принадлежат самому классу, а не его экземплярам.
Статические поля объявляются с использованием ключевого слова
static
и принадлежат классу в целом. Все экземпляры класса разделяют одно и то же статическое поле.public class Example
{
public static int Counter;
}
// Доступ к статическому полю
Example.Counter = 10;
Console.WriteLine(Example.Counter); // Выведет 10
Статические методы могут быть вызваны без создания экземпляра класса. Статические методы могут обращаться только к другим статическим членам класса.
public class Calculator
{
public static int Add(int a, int b)
{
return a + b;
}
}
// Вызов статического метода
int sum = Calculator.Add(5, 3);
Console.WriteLine(sum); // Выведет 8
Статические свойства похожи на статические поля, но с доступом через методы get и set.
public class Configuration
{
private static string _setting;
public static string Setting
{
get { return _setting; }
set { _setting = value; }
}
}
// Доступ к статическому свойству
Configuration.Setting = "My Setting";
Console.WriteLine(Configuration.Setting); // Выведет "My Setting"
Статические конструкторы используются для инициализации статических членов класса. Они вызываются один раз при первом обращении к статическим членам.
public class Database
{
public static string ConnectionString;
static Database()
{
ConnectionString = "Initial Catalog=myDatabase;Data Source=myServer;";
}
}
// При первом доступе вызывается статический конструктор
Console.WriteLine(Database.ConnectionString); // Выведет строку подключения
Статические члены полезны для хранения данных или функций, которые должны быть общими для всех экземпляров класса.
Позволяет вызывать методы и свойства без необходимости создавать экземпляр класса.
Статические конструкторы полезны для инициализации ресурсов или настройки параметров, необходимых для работы класса.
Ставь 👍 и забирай 📚 Базу знаний