Pakket | flash.errors |
Klasse | public dynamic class StackOverflowError |
Overerving | StackOverflowError Error Object |
Taalversie: | ActionScript 3.0 |
Runtimeversies: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Een uitzondering StackOverflowError geeft mogelijk aan dat er een oneindige herhaling is opgetreden. In dat geval moet een beëindigingsclausule aan de functie worden toegevoegd. De uitzondering kan ook aangeven dat het recursieve algoritme een juiste voorwaarde heeft voor het beëindigen maar dat de stackruimte toch overloopt. Probeer in dat geval het algoritme herhalend uit te drukken.
Openbare eigenschappen
Openbare methoden
Methode | Gedefinieerd door | ||
---|---|---|---|
StackOverflowError(message:String = "")
Hiermee wordt een nieuw object StackOverflowError gemaakt. | StackOverflowError | ||
Retourneert de aanroepstack voor een fout op het moment van het bouwen van de fout als tekenreeks. | Error | ||
Geeft aan of voor een object een opgegeven eigenschap is gedefinieerd. | Object | ||
Geeft aan of een instantie van de klasse Object zich in de prototypeketen van het object bevindt dat als parameter is opgegeven. | Object | ||
Geeft aan of de opgegeven eigenschap bestaat en kan worden opgesomd. | Object | ||
Stelt de beschikbaarheid van een dynamische eigenschap voor lusbewerkingen in. | Object | ||
Geeft de tekenreeksweergave van dit object weer, geformatteerd volgens de locatiespecifieke conventies. | Object | ||
[overschrijven]
Retourneert standaard de tekenreeks "Error" of de waarde in de eigenschap Error.message, indien gedefinieerd. | Error | ||
Retourneert de primitieve waarde van het opgegeven object. | Object |
Constructordetails
StackOverflowError | () | Constructor |
Voorbeelden Hoe dit voorbeeld te gebruiken
StackOverflowErrorExample.as
In het volgende voorbeeld wordt de voorbeeldklasse StackOverflowErrorExample gebruikt om de fout te tonen die wordt gegenereerd in geval van stackoverloop. Hierbij moeten de volgende stappen worden uitgevoerd:
- De constructor roept de methode
lockMachine()
aan binnen een segment van foutafhandelingscode waarmee objecten StackOverflowError worden afgevangen. - De methode
lockMachine()
roept zichzelf aan totdat de stack overloopt. - Nadat de uitzondering StackOverflowError wordt gegenereerd, vangt de constructor deze af en geeft vervolgens een foutmelding weer via de instructie
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(); } } }
Wed Jun 13 2018, 11:42 AM Z