Paket | flash.errors |
Klasse | public dynamic class StackOverflowError |
Vererbung | StackOverflowError Error Object |
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Eine StackOverflowError-Ausnahme weist möglicherweise darauf hin, dass eine unendliche Rekursion aufgetreten ist und Sie der Funktion eine Endebedingung hinzufügen müssen. Sie kann auch bedeuten, dass ein Rekursionsalgorithmus zwar eine korrekte Endebedingung enthält, der Stapelspeicher aber dennoch nicht ausreicht. Versuchen Sie in diesem Fall, den Algorithmus iterativ zu implementieren.
Öffentliche Eigenschaften
Öffentliche Methoden
Methode | Definiert von | ||
---|---|---|---|
StackOverflowError(message:String = "")
Erstellt ein neues StackOverflowError-Objekt. | StackOverflowError | ||
Gibt den Aufrufstapel für einen Fehler zum Zeitpunkt der Fehlerentstehung als String zurück. | Error | ||
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde. | Object | ||
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde. | Object | ||
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann. | Object | ||
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest. | Object | ||
Gibt die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas. | Object | ||
[override]
Gibt in der Standardeinstellung den String „Error“ oder, sofern definiert, den in der Error.message-Eigenschaft enthaltenen Wert zurück. | Error | ||
Gibt den Grundwert des angegebenen Objekts zurück. | Object |
Konstruktordetails
StackOverflowError | () | Konstruktor |
Beispiele Verwendung dieses Beispiels
StackOverflowErrorExample.as
Im folgenden Beispiel wird die Beispielklasse "StackOverflowErrorExample" verwendet, um den Fehler anzuzeigen, der bei einem Stapelüberlauf ausgegeben wird. Dies wird in den folgenden Schritten erreicht:
- Der Konstruktor ruft die
lockMachine()
-Methode in einem Codesegment zur Fehlerbehandlung auf, die StackOverflowError-Objekte abfängt. - Die
lockMachine()
-Methode ruft sich selbst auf, bis der Stapel überläuft. - Nachdem die StackOverflowError-Ausnahme ausgelöst wurde, fängt der Konstruktor sie ab und gibt über die
trace
-Anweisung eine Fehlermeldung aus.
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, 10:04 AM Z