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

Глобальная область видимости — глобальный объект (объект, автоматически создаваемый средой выполнения Flash для хранения глобальных определений).

Область видимости класса — объект Class данного класса (и объекты Class его предков).

Область видимости статического метода — объект Class данного класса (и объекты Class его предков).

Область видимости метода экземпляра — текущий объект (this) и объект активации (объект активации — это объект, создаваемый средой выполнения Flash и хранящийся в ней, который включает локальные переменные и параметры функции или метода).

Область видимости функции — объект активации.

Когда среда выполнения Flash встречает в программе выражение-идентификатор, она выполняет поиск этого идентификатора среди объектов в цепочке областей видимости. Например, рассмотрим следующий код:

package { public class SomeClass { public function instanceMeth ( ):void { function nestedFunc ( ):void { trace(a):

}

}

}

}

var a.-int = 15;

Когда среда Flash встречает идентификатор а, она выполняет поиск его значения в объекте активации функции nestedFunc ( ). Однако в функции nestedFunc ( ) не определено никаких локальных переменных или параметров с именем а, поэтому далее среда Flash продолжает поиск идентификатора а в текущем объекте (то есть в объекте, через который был вызван метод instanceMeth ( ) ). Но класс SomeClass не определяет и не наследует метод или переменную экземпляра

с именем а, поэтому после этого Flash продолжает поиск идентификатора а в классе объекта SomeClass. В классе SomeClass отсутствует определение статического метода или статической переменной с именем а, поэтому далее среда выполнения Flash продолжает поиск идентификатора а в объекте суперкласса класса SomeClass, которым является класс Ob j ect. Однако в классе Ob j ect отсутствует определение статического метода или статической переменной с именем а, поэтому после этого среда Flash продолжает поиск идентификатора а в глобальном объекте. В нем Flash находит идентификатор а и определяет, что значением этого идентификатора является 15. Получив значение идентификатора а, среда выполнения выводит число 15 в процессе отладки. Довольно много действий, чтобы найти маленькую а!

Вот объекты, среди которых среда выполнения Flash пыталась найти идентификатор а, перечисленные в порядке поиска:

? объект активации функции nestedFunc ( );

? объект, через который был вызван метод instanceMeth ( );

? объект класса SomeClass;

? объект класса Object;

? глобальный объект.

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

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

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

Полезные ссылки
Случайные записи
  • 26.07.2011">Ноутбук ACER AS7520G-502G16Mi
  • 13.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.104
  • 08.03.2011">Руководство по actionscript. часть 4, стр. 086
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.91
  • 26.08.2010">Классификация сайтов для дизайнера.
  • 04.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.23
  • 01.04.2010">Ресурсы с векторными шаблонами
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.36
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.97
  • 13.03.2011">Руководство по actionscript. часть 3, стр. 091
  • 20.03.2011">Руководство по actionscript. часть 2, стр. 070
  • 15.03.2011">Руководство по actionscript. часть 3, стр. 059
  • 22.03.2012">Google будет наказывать слишком оптимизированные сайты
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.76
  • 09.06.2011">Витамин С подавляет иммунитет
Опрос

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

View Results

Loading ... Loading ...