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

Для обращения к экземпляру класса XML, который содержится в объекте XMLList, возвращаемом выражением novel. @ ISBN, мы могли бы использовать следующий код:

novel.@ISBN[0]

Но при вызове метода класса XML над данным экземпляром мы обычно опускаем оператор обращения к элементу массива ([ 0 ]), как показано в следующем коде:

novel ЖЪЪН. некийМетодКлассаХМи )

Можно опустить запись [ 0 ], поскольку, как мы уже знаем, когда метод класса XML вызывается над объектом XMLList, содержащим только один экземпляр этого класса, вызов метода автоматически переадресуется данному экземпляру. Например, следующий явный код:

novel.@ISBN[0].parentC ) // Возвращает узел

является эквивалентом такого неявного кода:

novel.@ISBN. parent( ) // Также возвращает узел

С другой стороны, экземпляры класса XML, представляющие атрибуты, никогда не имеют детей и, следовательно, большая часть методов класса XML остается невостребованной. Вместо этого экземпляр класса XML, представляющий атрибут, используется всего лишь для хранения значения данного атрибута. Для обращения к значению атрибута используется метод экземпляра toString ( ) класса XML. Например, следующий код присваивает значение атрибута ISBN элемента переменной booklSBN, используя полностью явное выражение:

var booklSBN:String = novel.@ISBN[0].toStringC );

Однако не забывайте, что мы можем вызвать метод toS tring ( ) непосредственно над результатом выражения novel. @ ISBN (вместо выражения novel. @ ISBN [ 0 ] ), поскольку возвращаемый объект XMLList содержит только один экземпляр класса XML. Вот более короткая и более типичная запись:

var booklSBN-.String = novel.@ISBN. toString( ); // Опущена запись [0]

Приведенную строку кода можно сделать еще короче. Класс XML является динамическим. Таким образом, мы можем использовать возможность автоматического преобразования типов данных языка ActionScript, чтобы преобразовать значение любой переменной экземпляра класса XML к строке (правила преобразования типов данных языка ActionScript описаны в гл. 8):

var booklSBN:String = novel.@ISBN:

В данном коде переменная novel представляет экземпляр динамического класса (XML). Следовательно, когда мы присваиваем типизированной переменной booklSBN значение переменной ISBN этого экземпляра, компилятор откладывает проверку типов до этапа выполнения программы. На этапе выполнения, поскольку

тип данных переменной booklSBN является примитивным (String), значение переменной ISBN автоматически преобразуется к этому типу.

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

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

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

Полезные ссылки
Случайные записи
  • 13.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.97
  • 31.07.2011">Выбери свой онлайн-фоторедактор
  • 29.02.2012">«Яндекс.Диск» — российский ответ сервису iCloud от Apple
  • 28.02.2011">Руководство по actionscript. часть 6, стр. 007
  • 14.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.75
  • 02.03.2011">Руководство по actionscript. часть 5, стр. 101
  • 22.01.2011">Руководство по actionscript. часть 1, стр. 128
  • 27.02.2011">Руководство по actionscript. часть 6, стр. 046
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.85
  • 22.03.2011">Руководство по actionscript. часть 2, стр. 025
  • 19.07.2012">На серверах Dropbox произошла утечка адресов e-mail
  • 28.02.2011">Руководство по actionscript. часть 6, стр. 020
  • 26.02.2011">Руководство по actionscript. часть 6, стр. 065
  • 05.03.2011">Руководство по actionscript. часть 5, стр. 012
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 094
Опрос

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

View Results

Loading ... Loading ...