В C#, статический класс - это класс, который не может быть инстанциирован (т.е. создан экземпляр объекта этого класса), а все его члены (методы, свойства, поля) должны быть статическими. Статический класс может содержать только статические члены, поэтому он используется для группировки методов и свойств, которые не требуют состояния объекта и могут быть вызваны непосредственно через имя класса.
Статические классы предоставляют удобный способ группировки связанных функций и данных без необходимости создания экземпляра класса. Они часто используются для реализации утилитарных методов, расширений и вспомогательных функций. К примеру, статический класс может содержать методы для математических операций, строковых операций или методы для работы с файлами и директориями.
Вот пример статического класса в C#:csharp
Код:
public static class MathUtils
{
public static int Add(int a, int b)
{
return a + b;
}
public static int Multiply(int a, int b)
{
return a * b;
}
}
Статические классы имеют ряд ограничений:
- Нельзя создать экземпляр статического класса с использованием оператора new.
- Нельзя наследовать статический класс от другого класса или наследовать другие классы от статического класса.
- Статические классы не могут использовать нестатические члены или методы других классов, за исключением случаев, когда они создают экземпляр класса.