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

Яо-русски она будет звучать так: Вызов возможно неопределенного метода isEmpty через ссылку на статический тип String.

Чтобы обращение к функции isEmpty ( ) при использовании строгого режима не приводило к ошибке на этапе компиляции, мы должны применять динамическое обращение, как показано в следующем коде:

sl["isEmpty"]( )

С другой стороны, если бы класс String не был объявлен с использованием атрибута dynamic, первоначальный подход (то есть si. isEmpty ( ) ) не вызывал бы ошибку.

Стоит отметить, что фиксированные переменные и методы всегда имеют преимущество перед переменными прототипа. В предыдущем примере, если в классе String уже определен метод или переменная экземпляра с именем isEmpty, то все обращения к свойству isEmpty будут относиться к этой переменной или к методу экземпляра, а не к динамической переменной экземпляра объекта-прототипа класса String.

Цепочка прототипов

Из предыдущих разделов мы узнали, что объект-прототип может использоваться для разделения информации и поведения между объектами, созданными т определенной <^нкнда-констр^ктора или класса. фактически обращаться к данному объекту-прототипу можно и за пределами объектов, созданных из функции или класса, которому принадлежит данный прототип.

В случае класса к динамической переменной экземпляра, определенной в объекте-прототипе данного класса, можно обращаться не только через экземпляры этого класса, но и через экземпляры его потомков. Это демонстрирует следующий простой код:

// Создаем простейший класс А dynamic public class А {

}

// Создаем другой простейший класс В, который расширяет класс А

dynamic public class В extends А {

}

// Создаем основной класс приложения public class Main extends Sprite { public function Main ( ) {

// Добавляем динамическую переменную экземпляра в объект-прототип

// класса А

A. prototype. day = «Monday»;

// Обращаемся к переменной A. prototype. day через экземпляр класса В

var b:B = new В( );

trace(b. day); // Выводит: «Monday»

}

}

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

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

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

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

Полезные ссылки
Случайные записи
  • 22.03.2011">Руководство по actionscript. часть 2, стр. 024
  • 19.10.2011">Памяти Стива Джобса
  • 20.06.2011">Пластиковые или деревянные окна?
  • 12.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.115
  • 22.01.2011">Руководство по actionscript. часть 1, стр. 108
  • 27.02.2011">Руководство по actionscript. часть 6, стр. 048
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.68
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.29
  • 15.03.2011">Руководство по actionscript. часть 3, стр. 038
  • 22.08.2012">McAfee собирается защищать автомобили от вирусов
  • 04.03.2011">Руководство по actionscript. часть 5, стр. 030
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 064
  • 02.03.2011">Руководство по actionscript. часть 5, стр. 086
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.121
  • 25.02.2011">Руководство по actionscript. часть 6, стр. 098
Опрос

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

View Results

Loading ... Loading ...