Counter.CountDown cdl = new Counter.CountDown(10); int i;
do {
i = cdl.Count();
Console.Write(i + " ");
} while (i > 0);
Console.WriteLine ();
// Еще раз обратите внимание на то, как класс CountDown // определяется с помощью пространства имен Counter.
Counter.CountDown cd2 = new Counter.CountDown(20);
do {
i = cd2.Count();
Console.Write(i + " ");
} while (i > 0);
Console.WriteLine ();
cd2.Reset (4) ; do {
i = cd2.Count ();
Console.Write(i + " ");
} while (i > 0);
Console.WriteLine () ;
}
}
При выполнении этой программы получается следующий результат.
10 9 876543210
20 19 18 17 16 15 14 13 12 11 10 9 8 7 б 5 4 3 2 1 0 4 3 2 1 0
Для того чтобы скомпилировать эту программу, вы должны включить приведенный выше код в отдельный файл и указать его вместе с упоминавшимся выше файлом, содержащим код объявления пространства именCounter.Если этот код
находится в файлеNSDemo. cs,а код объявления пространства именCounter— в файлеCounter. cs,то для компиляции программы используется следующая командная строка.
csc NSDemo.cs counter.cs
Некоторые важные аспекты данной программы заслуживают более пристального внимания. Во-первых, при создании объекта классаCountDownнеобходимо дополнительно определить его имя с помощью пространства именCounter,как показано ниже. Ведь классCountDownобъявлен в пространстве именCounter.
Counter.CountDown cdl = new Counter.CountDown(10);
Это правило можно обобщить: всякий раз, когда используется член пространства имен, его имя необходимо дополнительно определить с помощью этого пространства имен. В противном случае член пространства имен не будет обнаружен компилятором.
Во-вторых, как только объект типаCounterбудет создан, дополнительно определять его члены с помощью пространства имен уже не придется. Следовательно, методcdl. Count() может быть вызван непосредственно без дополнительного указания пространства имен, как в приведенной ниже строке кода.
i = cdl.Count();