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

Поскольку сейчас наше внимание сосредоточено на пространствах имен, мы рассмотрим только классы Items и KidsGame. В качестве упражнения рассмотрите оставшиеся классы самостоятельно.

Для начала посмотрим, как изменился класс Items со времени его предыдущего представления в листинге 17.1. Во-первых, мы добавили две новые переменные fruit: : apple и color: : purple, представляющие элементы. Благодаря новым переменным каждая категория элементов для фруктов и цветов теперь состоит из двух элементов: апельсина и яблока для фруктов и оранжевого и фиолетового для цветов. Мы также заменили простые описания элементов из листинга 17.1 (например, Round citrus fruit) экземплярами класса Item. Экземпляры класса Item хранят название элемента, URL-адрес изображения этого элемента и его идентификатор. Следующий код демонстрирует измененные переменные, представляющие элементы. Как и в листинге 17.1, каждая переменная уточняется пространством имен, соответствующим множеству, которому принадлежит данный элемент.

fruit var orange:Item = new Item(«Orange», «fruit-orange. jpg», 1); fruit var apple:Item = new ItemCApple». «fruit-apple. jpg». 2);

color var orange:Item = new Item(«Orange», «color-orange. jpg», 3); color var purple:Item = new ItemC’Purple». «color-purple. jpg», 4);

Кроме того, в класс I terns добавлены два массива, предназначенные для управления элементами в виде групп. Каждый массив содержит полный список элементов своей группы (либо фруктов, либо цветов). Массивы присваиваются переменным с одним и тем же именем (itemSet), но уточняемым различными пространствами имен (fruit и color).

fruit var itemSet:Array = [fruit::orange, fruit::apple]; color var itemSet:Array = [color: :orange, color: .-purple];

Чтобы предоставить доступ другим классам к различным наборам элементов в игре, в Items определено два метода с одним и тем же локальным именем getltems ( ), которое уточняется различными пространствами имен fruit и color. Каждый метод get I terns ( ) возвращает копию набора элементов, соответствующего пространству имен данного метода. Таким образом, обратиться к подходящему набору элементов можно динамически, в зависимости от текущего типа вопроса (либо цвет, либо фрукт).

fruit function getltems ( ):Array { // Возвращает фрукты, return fruit::itemSet. siice(O):

}

color function getltems ( ):Array { // Возвращает цвета, return color::itemSet. slice(0);

}

Наконец, в классе Items определены переменная itemTypes и соответствующий метод-аксессор get ItemTypes ( ). Переменная itemTypes хранит список всех различных множеств элементов в игре. В нашей игре определено только два множества: фрукты и цвета, но в дальнейшем можно будет легко добавить новые множества. Каждое множество элементов соответствует пространству имен, поэтому переменная itemTypes представляет собой массив пространств имен. Метод get ItemTypes ( ) возвращает копию этого массива, предоставляя внешнему коду возможность централизованно получать официальный список типов элементов в игре.

// Переменная itemTypes

private var itemTypes.-Array = [color, fruit]:

// Метод getItemTypes( ) public function getltemTypes ( ):Array { return itemTypes. siice(O);

}

Это все, что касается изменений в классе Items. Теперь рассмотрим новый основной класс приложения KidsGame. В отличие от Items, класс KidsGame никогда не

использует идентификаторы пространств имен fruit и color напрямую. Вместо этого он обращается к указанным пространствам имен через метод экземпляра

getltemTypes ( ) класса Items.

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

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

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

Полезные ссылки
Случайные записи
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.93
  • 12.03.2011">Руководство по actionscript. часть 3, стр. 132
  • 04.03.2011">Руководство по actionscript. часть 5, стр. 041
  • 04.03.2011">Руководство по actionscript. часть 5, стр. 052
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.50
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.48
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.38
  • 14.03.2011">Руководство по actionscript. часть 3, стр. 069
  • 03.03.2011">Руководство по actionscript. часть 5, стр. 055
  • 23.02.2011">Руководство по actionscript. часть 7, стр. 019
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.20
  • 09.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.152
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.54
  • 03.09.2011">Сравнительный тест нетбука Acer One 751 и ноутбука Acer 1810 Timeline
  • 16.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.22
Опрос

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

View Results

Loading ... Loading ...