Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
1080 of 1492 menu
◀ ▶

Модификатор static

static член принадлежит самому типу. К нему обращаются через имя класса, без new. Статический метод не может обращаться к нестатическим полям и методам без экземпляра. В интерфейсах также объявляют статические члены.

Синтаксис

public static тип поле; public static тип Метод() { }

Пример

Давайте вызовем статический метод:

using System; class IdGen { public static string NextCode() { return "abcde"; } } class Program { static void Main() { Console.WriteLine(IdGen.NextCode()); } }

Результат выполнения кода:

"abcde"

Пример

Давайте изменим общее статическое поле:

using System; class Counter { public static int Total; public static void Add() { Total++; } } class Program { static void Main() { Counter.Add(); Counter.Add(); Console.WriteLine(Counter.Total); } }

Результат выполнения кода:

2

Пример

Давайте сочетаем статический и экземплярный метод:

using System; class Cell { public string Value = "12345"; public static string GetEmpty() { return ""; } public string Read() { return Value; } } class Program { static void Main() { var item = new Cell(); Console.WriteLine(Cell.GetEmpty().Length + " " + item.Read()); } }

Результат выполнения кода:

0 12345

Смотрите также

  • статика в интерфейсе,
    которая задаёт static-члены контракта
  • const,
    который задаёт неизменяемую константу
  • readonly,
    который запрещает перезапись после инициализации
  • ReferenceEquals,
    который сравнивает ссылки как static-метод
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить