Paquete | flash.errors |
Clase | public dynamic class StackOverflowError |
Herencia | StackOverflowError Error Object |
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Una excepción StackOverflowError puede indicar que se ha producido una recursión infinita, en cuyo caso, será necesario añadir una sentencia case de finalización a la función. También puede indicar que el algoritmo de recursión cuenta con una condición de finalización adecuada, pero que ha agotado el apilamiento. En este caso, intente expresar el algoritmo de forma iterativa.
Propiedades públicas
Métodos públicos
Método | Definido por | ||
---|---|---|---|
StackOverflowError(message:String = "")
Crea un nuevo objeto StackOverflowError. | StackOverflowError | ||
Devuelve la pila de llamadas de un error en el momento de la construcción del error como una cadena. | Error | ||
Indica si un objeto tiene definida una propiedad especificada. | Object | ||
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro. | Object | ||
Indica si existe la propiedad especificada y si es enumerable. | Object | ||
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle. | Object | ||
Devuelve la representación de cadena de este objeto, con formato según las convenciones específicas de configuración regional. | Object | ||
[override]
Devuelve la cadena "Error" de manera predeterminada o el valor contenido en la propiedad Error.message, en el caso de que se haya definido. | Error | ||
Devuelve el valor simple del objeto especificado. | Object |
Información sobre constructores
StackOverflowError | () | Información sobre |
Ejemplos Cómo utilizar este ejemplo
StackOverflowErrorExample.as
En el ejemplo siguiente, se utiliza la clase StackOverflowErrorExample para mostrar el error generado cuando se produce un desbordamiento de pila. Esto se consigue con los pasos siguientes:
- El constructor llama al método
lockMachine()
en un segmento de código de gestión de errores que captura objetos StackOverflowError. - El método
lockMachine()
se llama a sí mismo hasta que se desborda la pila. - Después de que se emite StackOverflowError, el constructor lo captura y devuelve un mensaje de error a través de la sentencia
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(); } } }
Tue Jun 12 2018, 02:12 PM Z