Dart Academy · Урок

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

Общие данные и вспомогательные средства на уровне класса

Урок 4 из 413 шагов

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

Общие, а не принадлежащие экземплярам

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

Статическое поле

Пометьте поле как статическое, и оно будет существовать в единственном экземпляре для всего класса, а не отдельно для каждого экземпляра. Все объекты видят одно и то же значение.

class Dog {
  static int count = 0;
}

Доступ к статическим членам

Обращайтесь к статическому члену через имя класса, а не через экземпляр. Для его использования не нужно создавать объект.

Dog.count = 5;
print(Dog.count);

Подсчёт экземпляров

Классический пример использования статического поля — общий счётчик. Каждый новый объект может увеличивать его, чтобы отслеживать количество существующих объектов.

Dog() {
  count++;
}

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

Статический метод также принадлежит классу. У него нет this, и он не может обращаться к полям экземпляра — только к статическим полям.

static int square(int n) => n * n;

Вызов статических методов

Вызывайте статический метод через имя класса. Это похоже на вспомогательную функцию в пространстве имён, сгруппированную внутри вашего класса.

var r = MathUtil.square(4); // 16

Константы класса

Объедините static и const, чтобы создать общую константу. Она вычисляется во время компиляции и имеет одно значение для всего класса.

static const double pi = 3.14159;

Использование константы класса

Читайте константу класса через имя класса, как обычное статическое поле. Она идеально подходит для фиксированных значений конфигурации.

print(Circle.pi);

Статический член не видит экземпляр

Статический член выполняется без объекта, поэтому у него нет this. Попытка прочитать из него поле экземпляра приводит к ошибке.

static void show() {
  // print(name); // error
}

Когда выбирать статические члены

Выбирайте статические члены, когда данные или поведение относятся ко всему типу, а не к одному созданному вами объекту.

Статические вспомогательные методы поддерживают порядок

Группировка связанных вспомогательных средств в виде статических методов помогает держать их в порядке под одним именем класса, вместо того чтобы оставлять их разрозненными функциями. 🧰

Быстрая проверка

Вам нужен один общий счётчик для всех объектов класса. Что следует использовать?

Итоги: статические члены и константы

Вы узнали, что статические члены принадлежат классу и не имеют this, а сочетание static const задаёт общие константы времени компиляции. 🎉

Можно начать бесплатно

Изучай Dart с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
30
Уроки
120

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

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

Да — полный текст урока «Статические члены и константы класса» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Dart Academy, подпишись на CoddyKit PRO. Курс Dart Academy содержит 4 уроков всего.

Чему я научусь в уроке «Статические члены и константы класса»?

Общие данные и вспомогательные средства на уровне класса Ты практикуешь Dart Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Dart Academy?

Предыдущий опыт не требуется. Dart Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Статические члены и константы класса»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Dart Academy?

Да. Каждый урок Dart Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

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

  1. Определение класса с полями
  2. Методы экземпляра и this
  3. Геттеры и сеттеры
  4. Статические члены и константы класса
← Назад к Dart Academy