Пространство имен
Пространство имен позволяет именовать группу данных, таких как классы, переменные и/или методы. В языке C# все библиотеки классов подключаются как пространства имен.
При автоматическом формировании проекта в среде Visual Studio.NET первой строкой создаваемого приложения вставляется строка using System.
Ключевое слово using подключает библиотеку классов System (каждая библиотека классов рассматривается как пространство имен).
Создание пространства имен указывается ключевым словом namespace.
Объявляемые пространства имен могут использоваться для структурирования программы.
Например:
namespace NameSN1.NameSN2 { class A {} } namespace NameSN3 { using NameSN1.NameSN2; class B: A {} }
В среде проектирования Visual Studio.NET библиотеки классов NET Framework образуют иерархическую структуру пространств имен.
Библиотеку классов среды .NET Framework иногда называют NET Framework-библиотекой или просто Framework-библиотекой.
Объявление пространства имен имеет следующее формальное описание:
namespace name[.name1] ...] { // объявляемые_данные }
Пространство имен указывается идентификатором, который может содержать операцию . , определяющую составное имя пространства имен.
Объявляемыми данными пространства имен могут быть:
- другие пространства имен;
- классы;
- интерфейсы;
- структуры;
- перечисления.
Для того чтобы иметь возможность обращаться к переменным или методам из пространства имен, можно использовать один из следующих способов:
- имя соответствующей переменной или метода должно быть квалифицировано названием пространства имен (пространство имен указывается перед именем через точку).
Например:
System.Console.WriteLine("Печать строки");
- имя библиотеки должно быть установлено как доступное оператором using.
Например:
using System;
Директива using может использоваться для:
- подключения пространства имен. Класс не может быть подключен директивой using;
- создания псевдонима имени класса. Псевдоним используется в программе для квалификации членов данного класса.
Объявление псевдонима имеет следующее формальное описание:
using alias=class_name;
Например:
using System.Console = my_SN; class MyClass { public static void Main() { my_SN.WriteLine("123");} }
Директива using позволяет не квалифицировать каждую переменную пространством имен, а просто подключить требуемое пространство имен.