Основы C#. Урок 21. Статические переменные
Обычно переменные класса принадлежат конкретному экземпляру класса.
Для обращения к таким переменным мы пишем что-то вроде
MyClass z;
k=z.data;
Здесь переменная data принидлежит классу MyClass. Для каждого
экземпляра класса она своя.
Наряду с обычными переменными существуют и статические переменые
класса. Их основное отличие от обычных переменных в том, что они
относятся к классу целиком. Т. е. на все экземпляры класса у нас есть
только одна переменая. Получить доступ к такой переменой можно только
для самого класса без создания его экземпляра. Через конкретный же
экземпляр класса доступа к такой перемнной нет. Т. е. использовать такую
статическую переменную можно только для самого класса без создания
экземпляра.
Для объявления переменной статический надо использовать ключевое
слово static. Вот пример:
class MyClass
{
//Статическая переменная
public static int data;
//Конструктор
public MyClass()
{
data++;
}
}
class Test
{
public static void Main()
{
MyClass a=new MyClass();
MyClass b=new MyClass();
System.Console.WriteLine(MyClass.data);
}
}
Указанный фрагмент выведет на экран, естественно, 2 (переменая data
увеличится в каждом из двух конструкторов).
|