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

Теперь перейдем к рассмотрению следующего вопроса, касающегося методов экземпляра, — связанных методов.

Связанные методы

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

Например, в следующем коде создается новый объект класса VirtualPet, после чего локальной переменной consume присваивается метод eat ( ) созданного объекта. Обратите внимание, что в операторе присваивания после имени метода не ставятся круглые скобки ( ) вызова метода. В результате переменной с о n s ume присваивается сам метод, а не его возвращаемое значение.

package zoo { public class VirtualZoo { private var pet:

public function VirtualZoo ( ) { pet = new VirtualPet(«Stan»): // Присваивание переменной метода eat( ) var consume = pet. eat;

}

Метод, присвоенный переменной, может быть вызван через эту переменную стандартным оператором круглых скобок — ( ). Например, в следующем коде вызывается метод, на который ссылается переменная consume:

package zoo { public class VirtualZoo { private var pet:

public function VirtualZoo ( ) { pet = new VirtualPet(«Stan»):

// Присваивание связанного метода переменной consume var consume = pet. eat:

// Вызов метода, на который ссылается переменная consume consume(300);

}

}

}

При выполнении предыдущего кода, выделенного полужирным шрифтом, вызывается метод еа t ( ), в качестве аргумента которого передается значение 300. Вопрос заключается в том, какое животное принимает пищу? Или, говоря техническим языком, над каким объектом выполняется этот метод?

Когда метод присваивается переменной и затем вызывается через нее, код выполняется над тем объектом, который изначально использовался для обращения к методу. Например, в предыдущем коде, когда метод eat ( ) присваивается переменной consume, обращение к методу происходит через объект класса VirtualPet с именем 11 Stan11. Таким образом, при вызове метода eat ( ) через переменную consume код будет выполняться над объектом класса VirtualPet с именем «Stan».

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

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

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

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

Полезные ссылки
Случайные записи
  • 04.03.2011">Руководство по actionscript. часть 5, стр. 030
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.46
  • 11.04.2014">Натуральный камень и методы его обработки
  • 24.02.2011">Руководство по actionscript. часть 6, стр. 106
  • 14.03.2011">Руководство по actionscript. часть 3, стр. 064
  • 11.11.2012">Фотокнига от Принт-а-Тет
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.30
  • 09.08.2010">Современное включение поля ввода поискового запроса.
  • 22.03.2011">Руководство по actionscript. часть 2, стр. 019
  • 02.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.126
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 001
  • 13.03.2011">Руководство по actionscript. часть 3, стр. 092
  • 27.02.2011">Руководство по actionscript. часть 6, стр. 043
  • 23.02.2011">Руководство по actionscript. часть 7, стр. 017
  • 06.03.2011">Руководство по actionscript. часть 4, стр. 146
Опрос

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

View Results

Loading ... Loading ...