Пакет | flash.errors |
Класс | public dynamic class StackOverflowError |
Наследование | StackOverflowError ![]() ![]() |
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Исключение StackOverflowError может говорить о том, что произошла бесконечная рекурсия. В таком случае в функцию необходимо добавить случай завершения операции. Оно также может указывать на то, что рекурсивный алгоритм имеет правильное условие завершения операции, но стек все равно переполнен. В таком случае, попытайтесь сформулировать алгоритм в порядке итерации.
Метод | Определено | ||
---|---|---|---|
StackOverflowError(message:String = "")
Создает новый объект StackOverflowError. | StackOverflowError | ||
![]() |
Возвращает список вызовов в виде строки для ошибки в момент ее конструирования (только отладочная версия Flash Player). | Error | |
![]() |
Показывает, определено ли заданное свойство для объекта. | Object | |
![]() |
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | |
![]() |
Показывает наличие заданного свойства и его перечисляемость. | Object | |
![]() |
Задает доступность динамического свойства для операций цикла. | Object | |
![]() |
Возвращает строку "Error" по умолчанию или значение, содержащееся в свойстве Error.message, если оно определено. | Error | |
![]() |
Возвращает элементарное значение заданного объекта. | Object |
StackOverflowError | () | Конструктор |
public function StackOverflowError(message:String = "")
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Создает новый объект StackOverflowError.
Параметрыmessage:String (default = " ") — Строка, связанная с объектом ошибки.
|
lockMachine()
в сегменте кода обработки ошибок, перехватывающего объекты StackOverflowError. lockMachine()
вызывает себя, пока не переполнится стек.trace()
. package { import flash.display.Sprite; import flash.errors.StackOverflowError; public class StackOverflowErrorExample extends Sprite { public function StackOverflowErrorExample() { try { lockMachine(); } catch(e:StackOverflowError) { trace(e); // StackOverflowError: Error #1023: Stack overflow. } } private function lockMachine():void { lockMachine(); } } }