15.10.2012 Views

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

Actionscript 3 Entwicklerhandbuch

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ACTIONSCRIPT 3.0 ENTWICKLERHANDBUCH<br />

Verarbeiten von Fehlern<br />

Verarbeiten synchroner Fehler in einer Anwendung<br />

Flash Player 9 und höher, Adobe AIR 1.0 und höher<br />

Die häufigste Fehlerverarbeitung besteht aus Programmlogik für synchrone Fehler. Dabei fügen Sie im Code<br />

Anweisungen ein, um synchrone Fehler beim Ausführen einer Anwendung abzufangen. Mit dieser Art der<br />

Fehlerverarbeitung kann die Anwendung beim Fehlschlagen von Funktionen Laufzeitfehler feststellen und die<br />

Abarbeitung fortsetzen. Die Logik zum Abfangen synchroner Fehler umfasst try..catch..finally-Anweisungen,<br />

mit denen Vorgänge probeweise ausgeführt, eventuelle Fehlerreaktionen der Flash-Laufzeitumgebung abgefangen<br />

und schließlich bei Bedarf andere Vorgänge durchgeführt werden, um einen fehlgeschlagenen Vorgang zu<br />

verarbeiten.<br />

Verwenden von „try..catch..finally“-Anweisungen<br />

Flash Player 9 und höher, Adobe AIR 1.0 und höher<br />

Wenn Sie mit synchronen Laufzeitfehlern arbeiten, verwenden Sie die try..catch..finally-Anweisungen zum<br />

Abfangen von Fehlern. Bei einem Laufzeitfehler gibt die Flash-Laufzeitumgebung einen Ausnahmefehler aus. Dies<br />

bedeutet, dass Flash Player die normale Ausführung unterbricht und ein spezielles Objekt mit dem Error-Typ erstellt.<br />

Das Error-Objekt wird dann an den ersten verfügbaren catch-Block übergeben.<br />

Die try-Anweisung umschließt Anweisungen, die möglicherweise Fehler verursachen können. Die catch-<br />

Anweisung wird stets mit einer try-Anweisung verwendet. Wenn in einer Anweisung im try-Anweisungsblock ein<br />

Fehler auftritt, werden die catch-Anweisungen ausgeführt, die dieser try-Anweisung zugewiesen sind.<br />

Die finally-Anweisung umschließt Anweisungen, die unabhängig davon ausgeführt werden, ob im try-Block ein<br />

Fehler aufgetreten ist. Wenn kein Fehler auftritt, werden nach Abschluss der Anweisungen im try-Block die<br />

Anweisungen innerhalb des finally-Blocks ausgeführt. Beim Auftreten eines Fehlers werden zuerst die<br />

entsprechende catch-Anweisung und dann die Anweisungen im finally-Block ausgeführt.<br />

Der nachstehende Code veranschaulicht die Syntax für die Verwendung von try..catch..finally-Anweisungen:<br />

try<br />

{<br />

// some code that could throw an error<br />

}<br />

catch (err:Error)<br />

{<br />

// code to react to the error<br />

}<br />

finally<br />

{<br />

// Code that runs whether an error was thrown. This code can clean<br />

// up after the error, or take steps to keep the application running.<br />

}<br />

Jede catch-Anweisung kann einen bestimmten Ausnahmetyp verarbeiten. In catch-Anweisungen können nur<br />

Fehlerklassen angegeben werden, die Unterklassen der Error-Klasse sind. Jede catch-Anweisung wird in der<br />

angegebenen Reihenfolge überprüft. Nur die erste catch-Anweisung, die mit dem Typ des ausgelösten Fehlers<br />

übereinstimmt, wird ausgeführt. Wenn Sie erst die übergeordnete Error-Klasse und dann eine Unterklasse der Error-<br />

Klasse testen, wird daher nur eine Übereinstimmung mit der übergeordneten Error-Klasse erkannt. Dies wird mit dem<br />

folgenden Code veranschaulicht:<br />

Letzte Aktualisierung 27.6.2012<br />

62

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!