Статические члены и методы
Разберитесь, как использовать статические члены и методы для общей функциональности
«Статические члены и методы» — бесплатный урок C# Academy на CoddyKit. Это урок 3 из 6. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения C# Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс C# Academy содержит 6 уроков всего.
Статические члены и методы
Статические члены и методы
Добро пожаловать в следующий урок! В этом уроке вы узнаете о статических членах и методах в C#, их назначении и эффективном использовании в программах. Давайте начнём!

Что такое статические члены?
Что такое статические члены?
Статические члены принадлежат самому классу, а не какому-либо отдельному экземпляру класса. Они являются общими для всех экземпляров и доступны без создания объекта класса.
Ключевой момент: Используйте статические члены для значений или методов, одинаковых для всех экземпляров.
Определение статических полей
Определение статических полей
Чтобы определить статическое поле, используйте ключевое слово static. Пример:
Ключевой момент: Статические поля являются общими для всех экземпляров класса.
using System;
class Counter {
public static int Count = 0; // Static field
public Counter() {
Count++; // Increment count for each object created
}
}
class Program {
static void Main() {
new Counter(); // Create first object
new Counter(); // Create second object
Console.WriteLine("Total Count: " + Counter.Count); // Outputs: Total Count: 2
}
}
Что такое статические методы?
Что такое статические методы?
Статические методы можно вызывать у самого класса без создания его экземпляра. Используйте их для вспомогательных функций или операций, не зависящих от данных экземпляра. Пример:
Совет: Используйте статические методы для функциональности, не связанной с конкретными объектами.
using System;
class MathUtils {
public static int Add(int a, int b) {
return a + b;
}
}
class Program {
static void Main() {
int result = MathUtils.Add(5, 3); // Call static method
Console.WriteLine("Sum: " + result); // Outputs: Sum: 8
}
}
Статические свойства
Статические свойства
Статические свойства обеспечивают контролируемый доступ к статическим полям. Пример:
Ключевой момент: Статические свойства предоставляют удобный способ доступа к статическим полям и их изменения.
using System;
class Configuration {
private static string appName = "MyApp"; // Static field
public static string AppName { // Static property
get { return appName; }
set { appName = value; }
}
}
class Program {
static void Main() {
Console.WriteLine("App Name: " + Configuration.AppName); // Get static property
Configuration.AppName = "SuperApp"; // Set static property
Console.WriteLine("Updated App Name: " + Configuration.AppName);
}
}
Статические конструкторы
Статические конструкторы
Статический конструктор автоматически вызывается для инициализации статических полей или выполнения других разовых задач для класса. Пример:
Совет: Статические конструкторы не могут иметь модификаторы доступа или параметры и вызываются только один раз.
using System;
class Logger {
public static string LogFilePath;
// Static constructor
static Logger() {
LogFilePath = "logs.txt"; // Initialize static field
Console.WriteLine("Static constructor called.");
}
}
class Program {
static void Main() {
Console.WriteLine("Log File Path: " + Logger.LogFilePath);
}
}
Практическое задание
Практическое задание
Создайте класс TemperatureConverter со статическими методами CelsiusToFahrenheit() и FahrenheitToCelsius() для преобразования температуры. Пример:
using System;
class TemperatureConverter {
public static double CelsiusToFahrenheit(double celsius) {
return (celsius * 9 / 5) + 32;
}
public static double FahrenheitToCelsius(double fahrenheit) {
return (fahrenheit - 32) * 5 / 9;
}
}
class Program {
static void Main() {
Console.WriteLine("25°C to Fahrenheit: " + TemperatureConverter.CelsiusToFahrenheit(25));
Console.WriteLine("77°F to Celsius: " + TemperatureConverter.FahrenheitToCelsius(77));
}
}
Рекомендации по статическим членам
Рекомендации по статическим членам
Ниже приведены рекомендации:
- Используйте статические члены для функциональности или данных, не зависящих от экземпляров класса.
- Избегайте чрезмерного использования статических полей, чтобы сохранять модульность и тестируемость.
- Используйте статические конструкторы для однократной инициализации статических данных в течение жизненного цикла приложения.
Совет: Делайте статические члены простыми и специализированными.
Отличная работа!
Отличная работа!
Поздравляем! Вы научились использовать статические члены, методы и конструкторы для определения функциональности на уровне класса в C#. На следующем уроке мы рассмотрим перечисления и структуры, чтобы управлять фиксированными наборами значений и группировать связанные данные. Продолжайте программировать!

Часто задаваемые вопросы
Урок «Статические члены и методы» бесплатный?
Да — полный текст урока «Статические члены и методы» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс C# Academy, подпишись на CoddyKit PRO. Курс C# Academy содержит 6 уроков всего.
Чему я научусь в уроке «Статические члены и методы»?
Разберитесь, как использовать статические члены и методы для общей функциональности Ты практикуешь C# Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать C# Academy?
Предыдущий опыт не требуется. C# Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 6.
Сколько времени занимает урок «Статические члены и методы»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке C# Academy?
Да. Каждый урок C# Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Введение в интерфейсы
- Абстрактные классы
- Статические члены и методы
- Перечисления и структуры
- Делегаты и события
- Коллекции в C#: списки, словари и очереди