Модификатор static
Обновлен: Ноябрь 2007
Указывает, что член класса принадлежит классу, а не его экземпляру.
static statement
Аргументы
- statement
Обязательный. Определение члена класса.
Заметки
Модификатор static указывает, что член класса принадлежит самому классу, а не его экземпляру. Даже если в отдельном приложении создается множество экземпляров класса, в нем существует только одна копия члена с модификатором static. При доступе к члену с модификатором static следует ссылаться на класс, на не на его экземпляр. Однако в рамках объявления члена класса к членам static можно обращаться с помощью объекта this.
Модификатором static можно помечать члены классов. Классы, интерфейсы и члены интерфейсов не могут иметь модификатора static.
Модификатор static можно объединять только с модификаторами наследования (abstract и final) или модификаторами безопасности версий (hide и override).
Не следует смешивать модификатор static с оператором static. Модификатором static помечают члены, принадлежащие самому классу, а не его экземпляру.
Пример
В следующем примере демонстрируется использование модификатора static.
class CTest {
var nonstaticX : int; // A non-static field belonging to a class instance.
static var staticX : int; // A static field belonging to the class.
}
// Initialize staticX. An instance of test is not needed.
CTest.staticX = 42;
// Create an instance of test class.
var a : CTest = new CTest;
a.nonstaticX = 5;
// The static field is not directly accessible from the class instance.
print(a.nonstaticX);
print(CTest.staticX);
После выполнения этой программы выводится следующий результат:
5
42