Функции уровня пакета ActionScript 

 

 

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

описание должно размещаться непосредственно внутри тела пакета. Чтобы ограничить 

доступ к функции только тем пакетом, в котором она описана, перед описанием 

функции нужно указать модификатор управления доступом internal, как  

показано в следующем коде: 

package имяПакета { 

internal function идентификатор ( ) { 

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

функции нужно указать модификатор управления доступом public, как показано в  

следующем коде: 

package имяПакета { 

public function идентификатор ( ) { 

Если никакой модификатор управления доступом не указан, то компилятор языка 

ActionScript автоматически использует модификатор internal. 

Следующий код создает функцию уровня пакета i sMa с ( ), возвращающую значение 
типа Boolean, которое указывает, является ли Macintosh текущей операционной 
системой. Поскольку в описании функции isMac ( ) указан модификатор  
управления доступом internal, эта функция будет доступна только внутри пакета 
utilities. Как было отмечено ранее, если для компиляции используется один 
из компиляторов, разработанных корпорацией Adobe, следующий код необходимо 
поместить в отдельный AS-файл с именем isMac. as. 
package utilities { 
import flash.system.*; 
internal function isMac ( ) { 
return Capabilities.os == "MacOS"; 
Чтобы функция isMac ( ) была доступна за пределами пакета utilities,  
необходимо заменить модификатор internal модификатором public, как показано 
в следующем коде: 
package utilities { 
import flash.system.*; 
public function isMac ( ) { 
return Capabilities.os == "MacOS"; 
Тем не менее, чтобы иметь возможность использовать функцию isMac ( ) за 
пределами пакета utilities, ее сначала необходимо импортировать.  
Предположим, что функция isMac ( ) является частью большой программы с классом 
Welcome, входящим в пакет setup. Чтобы воспользоваться этой функцией в  
классе Welcome, в исходный файл этого класса должна быть импортирована функция 
utilities. isMac ( ), как показано в следующем коде: 
package setup { 
// Импортировать функцию isMac( ). чтобы ее можно было использовать 
// внутри тела этого пакета 
import utilities.isMac; 
public class Welcome { 
public function Welcome ( ) { 
// Воспользоваться функцией isMac( ) 
if (isMac( )) { 
// Выполнить специфические для Macintosh действия 
Глобальные функции. Функции, определенные на уровне пакета и размещаемые 
внутри пакета без имени, называются глобальными, поскольку обращаться к ним 
можно глобально, из любой точки программы без необходимости использования 
оператора import. Например, следующий код определяет глобальную функцию 
isLinux ( ). Поскольку функция isLinux ( ) находится внутри пакета без  
имени, к ней можно обращаться из любого места кода данной программы. 
package { 
import flash.system.*; 
public function isLinux ( ) { 
return Capabilities.os == "Linux"; 
Следующий код демонстрирует модифицированную версию класса Welcome из 
предыдущего раздела, в котором вместо функции isMac ( ) используется  
функция isLinux ( ). Обратите внимание, что перед применением функцию  
импортировать не нужно. 
package setup { 
public class Welcome { 
public function Welcome ( ) { 
// Воспользоваться функцией isLinux( ) 
if (isLinux( )) { 
// Выполнить специфические для Linux действия 
Многие функции уровня пакета и глобальные функции являются собственными для 
каждой отдельно взятой среды выполнения Flash. Список доступных функций можно 
найти в документации корпорации Adobe по интересуемой среде выполнения Flash. 
Пожалуй, наиболее используемой собственной глобальной функцией является 
функция trace ( ), имеющая следующий обобщенный вид: 
trace (аргумент1, аргумент2... аргумент) 
Функция trace ( ) представляет собой простейший инструмент для поиска 
ошибок в программе (то есть для отладки). Она позволяет выводить указанные 
аргументы либо в окно среды разработки, либо в файл журнала. Например, при 
выполнении программы в тестовом режиме в среде разработки Flash с помощью 
команды Control ► Test Movie (Управление ► Проверка фильма) результаты всех  
вызовов функции trace ( ) появятся в окне Output (Вывод). Подобным образом при 
выполнении программы в тестовом режиме в приложении Flex Builder с помощью 
команды Run ► Debug (Выполнить ► Отладка) результаты всех вызовов функции 
trace ( ) появятся в окне Console (Консоль). Информацию по  
конфигурированию отладочной версии приложения Flash Player для вывода аргументов функции 
trace ( ) в текстовый файл можно найти по адресу http://llvedocs.macromedla.com/ 
flex/2/docs/00001531.php. 




BACK NEXT

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