Руководство по actionscript. часть 3, стр. 007
Рассмотрим общий вид директивы use namespace:
use namespace идентификаторПространстваИмен
Здесь идентификаторПространстваИмен — это идентификатор пространства имен, которое должно быть добавлено в набор открытых пространств имен. Стоит отметить, что данный идентификатор должен быть константой на этапе компиляции, поэтому не может быть переменной, которая ссылается на значение пространства имен.
Посмотрим на примере предыдущего конструктора класса Items, как работает директива use namespace, обратившись напрямую к локальной переменной orange после того, как пространство имен fruit будет добавлено в набор
открытых пространств имен (эта операция также называется открытием пространства имен fruit).
public function Items ( ) { use namespace fruit; trace(orange);
}
Мы добавили пространство имен fruit в набор открытых пространств имей, поэтому, когда компилятор встретит следующий код:
trace(orange);
он автоматически проверит, существует ли уточненный идентификатор fruit: : orange. В нашем примере данный идентификатор существует, поэтому он будет использован вместо локального имени orange. Другими словами, в конструкторе класса Items этот код:
trace(fruit::orange); // Выводит: Round citrus fruit выполняет то же самое, что и следующий: use namespace fruit;
trace(orange); // Выводит: Round citrus fruit
Открытые пространства имен и область видимости
Каждая область видимости в программе на языке ActionScript имеет отдельный список открытых пространств имен. Пространство имен, открытое в определенной области видимости, будет открыто для нее, включая вложенные области, но при этом оно не будет открыто для остальных областей видимости. Открытое пространство имен будет доступно даже до инструкции use namespace (однако лучше всего помещать директиву use namespace в самом верху содержащего ее блока кода).
Напомним, что «область видимости» обозначает «область программы». В ActionScript для d ч каждого пакета, класса и метода определена уникальная область видимости. Условные 4 д]а4 операторы и операторы циклов не имеют собственных областей видимости.