0Pricing
C# Academy · Урок

Статические члены и методы

Разберитесь, как использовать статические члены и методы для общей функциональности

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

Статические члены и методы

Статические члены и методы

Добро пожаловать в следующий урок! В этом уроке вы узнаете о статических членах и методах в C#, их назначении и эффективном использовании в программах. Давайте начнём!

Статические члены и методы — иллюстрация 1

Что такое статические члены?

Что такое статические члены?

Статические члены принадлежат самому классу, а не какому-либо отдельному экземпляру класса. Они являются общими для всех экземпляров и доступны без создания объекта класса.

Ключевой момент: Используйте статические члены для значений или методов, одинаковых для всех экземпляров.

Определение статических полей

Определение статических полей

Чтобы определить статическое поле, используйте ключевое слово 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#. На следующем уроке мы рассмотрим перечисления и структуры, чтобы управлять фиксированными наборами значений и группировать связанные данные. Продолжайте программировать!

Статические члены и методы — иллюстрация 10

Часто задаваемые вопросы

Урок «Статические члены и методы» бесплатный?

Да — полный текст урока «Статические члены и методы» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 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 — локальная установка не требуется.

Все уроки этого курса

  1. Введение в интерфейсы
  2. Абстрактные классы
  3. Статические члены и методы
  4. Перечисления и структуры
  5. Делегаты и события
  6. Коллекции в C#: списки, словари и очереди
← Назад к C# Academy