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

 

 

В языке ActionScript сам метод может рассматриваться как значение. Другими 

словами, метод может быть присвоен переменной, передан в функцию или другой 

метод, а также возвращен из функции или другого метода. 

Например, в следующем коде создается новый объект класса VirtualPet, после 

чего локальной переменной consume присваивается метод eat ( ) созданного 

объекта. Обратите внимание, что в операторе присваивания после имени метода 

не ставятся круглые скобки ( ) вызова метода. В результате переменной consume 

присваивается сам метод, а не его возвращаемое значение. 

package zoo { 

public class Virtual Zoo { 

private var pet: 

public function Virtual Zoo ( ) { 

pet = new Virtual Pet СStan"): 

// Присваивание переменной метода eat( ) 

var consume = pet.eat; 

}
Метод, присвоенный переменной, может быть вызван через эту переменную  
стандартным оператором круглых скобок — ( ). Например, в следующем коде  
вызывается метод, на который ссылается переменная consume: 
package zoo { 
public class Virtual Zoo { 
private var pet: 
public function Virtual Zoo ( ) { 
pet = new VirtualPetCStan"): 
// Присваивание связанного метода переменной consume 
var consume = pet.eat: 
// Вызов метода, на который ссылается переменная consume 
consumeC00); 
При выполнении предыдущего кода, выделенного полужирным шрифтом,  
вызывается метод eat ( ), в качестве аргумента которого передается значение 300. Вопрос 
заключается в том, какое животное принимает пищу? Или, говоря техническим 
языком, над каким объектом выполняется этот метод? 
Когда метод присваивается переменной и затем вызывается через нее, код  
выполняется над тем объектом, который изначально использовался для обращения к методу. 
Например, в предыдущем коде, когда метод eat ( ) присваивается переменной 
consume, обращение к методу происходит через объект класса VirtualPetc  
именем " Stan". Таким образом, при вызове метода eat ( ) через переменную consume 
код будет выполняться над объектом класса VirtualPet с именем "Stan11. 
Метод, который присваивается переменной, передается в функцию или другой 
метод либо возвращается из функции или другого метода, называется связанным 
методом. Свое название связанные методы получили потому, что каждый такой 
метод навсегда связывается с объектом, через который изначально происходит 
обращение к методу. Связанные методы являются экземплярами собственного 
класса Function. 
Внутри тела связанного метода ключевое слово this ссылается на объект, с  
которым связан данный метод. Например, внутри тела связанного метода, который был 
присвоен переменной consume, ключевое слово this ссылается на объект класса 
VirtualPet с именем "Stan". 
Связанные методы используются в тех случаях, когда одна часть программы  
желает, чтобы другая часть выполнила определенный метод над заданным объектом. 
Примеры такого сценария можно найти в гл. 12, где рассматривается система  
обработки событий. Связанные методы нашли широкое применение в системе  
обработки событий языка ActionScript. 
Продолжая тему разговора о методах экземпляра, в следующем разделе рассмотрим 
использование методов экземпляра для изменения состояния объекта. 

 




BACK NEXT

Сайт является частным собранием материалов и представляет собой любительский информационно-образовательный ресурс. Вся информация получена из открытых источников. Администрация не претендует на авторство использованных материалов. Все права принадлежат их правообладателям