Руководство по actionscript. часть 2, стр. 153

Однако если нельзя использовать модификаторы управления доступом, с помощью чего можно управлять доступностью уточненного идентификатора? Ответ: с помощью доступности идентификатора уточняющего пространства имен.

Видимость уточненных идентификаторов

373

^ I Доступность уточняющего пространства имен в уточненном идентификаторе определя-

Ач ет доступность этого идентификатора. Если уточняющее пространство имен доступно в указанной области видимости, значит, доступен и уточненный идентификатор.

Например, в выражении game items. fruit: : orange переменная fruit: : orange доступна тогда, и только тогда, когда пространство имен fruit доступно в области видимости этого выражения. Доступность переменной fruit: : orange целиком и полностью определяется доступностью пространства имен fruit.

В листинге 17.2 демонстрируется видимость уточненного идентификатора на примере обобщенного кода.

Листинг 17.2. Демонстрация видимости уточненного идентификатора

// Создаем пространство имен п в пакете one. видимое только в этом пакете package one { internal namespace n = «http://www. example. eom/n»;

// Создаем переменную n::p в классе А, пакет one package one { public class A { n var p:int = 1:

// Поскольку пространство имен n объявлено с использованием модификатора // управления доступом internal, переменная п::р доступна в любом месте // внутри пакета one package one { public class В { public function В ( ) { var a:A = new A( ); trace(a. n::p); // OK

// Однако переменная n::p недоступна для кода за пределами пакета one package two { import one.*;

public class С { public function С ( ) { var a:A = new A( );

trace(a. n::p); // Недопустимо, поскольку пространство имен n

// объявлено с использованием модификатора управления // доступом internal в пакете one. и поэтому // недоступно в пакете two

Сравнение уточненных идентификаторов

Два пространства имен считаются одинаковыми тогда, и только тогда, когда совпадают их названия (URI). Например, чтобы определить, являются ли одинаковыми пространства имен в уточненных идентификаторах fruit : : orange и color: : orange, среда выполнения Flash не проверяет, соответствуют ли буквы слова «fruit» первого идентификатора буквам слова color второго идентификатора. Вместо этого среда Flash проверяет, совпадают ли значения переменной ur i экземпляра класса Namespace, на который ссылается идентификатор fruit, и экземпляра класса Namespace, на который ссылается идентификатор color. Если значение переменной f ruit. uri равняется значению переменной color, uri, то пространства имен считаются одинаковыми.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставить комментарий

Вы должны авторизоваться для отправки комментария.

Полезные ссылки
Случайные записи
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.21
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.47
  • 28.02.2011">Руководство по actionscript. часть 6, стр. 012
  • 15.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.44
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 021
  • 13.03.2011">Руководство по actionscript. часть 3, стр. 099
  • 23.02.2011">Руководство по actionscript. часть 7, стр. 027
  • 23.02.2011">Руководство по actionscript. часть 7, стр. 024
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.66
  • 09.03.2011">Руководство по actionscript. часть 4, стр. 062
  • 13.03.2011">Руководство по actionscript. часть 3, стр. 096
  • 02.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.110
  • 18.11.2011">Обзор LG Optimus LTE
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.28
  • 26.02.2011">Руководство по actionscript. часть 6, стр. 072
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...