|
Статическими к классе могут быть и конструкторы. Если обычный конструктор вызывается в момент создания экземпляра класса, то статический - в самом начале, т. е. перед созданием первого экземпляря класса.
В статическом конструкторе можно задать начальные значения для статических переменных класса. Вот пример: class MyClass { public static int data; //Статический конструктор static MyClass() { data=10; } //Конструктор public MyClass() { data++; } } class Test { public static void Main() { MyClass a=new MyClass(); MyClass b=new MyClass(); System.Console.WriteLine(MyClass.data); } }
Указанный фрагмент выведет на экран 12. Действительно, сначала вызовется статический конструктор, который присвоит значение 10 перемнной data. Затем для каждого созданного экземпляра класса MyClass вызовется обычный конструктор, к котором переменная data увеличится каждый раз на 1.
Обратите внимание, что оба конструктора без параметра. Противоречия тут нет, так как один из них - статический, а другой - нет.
Источник: |
Категория: С# | Добавил: Sumrak (14.11.2010)
| Автор: E W
|
Просмотров: 1392 | Комментарии: 0
| Теги:
| Рейтинг: 0.0/0 |
|
|
|