In flash AS3, Wie einzelne versuchen, catch-code, um alle Fehler abzufangen, die in der ganzen Klasse?
In Flash AS3 ich will schreiben die einzelnen try catch - block, um Fehler abzufangen, die in der ganzen Klasse.
Ich habe zum Beispiel eine Menge von Funktionen, die in myClass.als. Ich will nicht schreiben in jeder Funktion try-catch-Blöcke, um Sie zu fangen Fehler in dieser Funktion.
Gibt es da irgendwelche Methoden, dies zu tun?
Danke!
InformationsquelleAutor Almas Adilbek | 2010-08-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
können Sie nicht! es gibt keine solche einfache Möglichkeit wie, auch in einer anderen Sprache entweder als AS3-außer Sie verwenden AOP-Ansatz zu tun.
Die beste Vorgehensweise ist, nur lassen Sie Klassen Blase der Fehler (Exception) und lassen Sie die höhere Ebene zu fangen und verarbeiten die Fehler.
BEARBEITEN - Bezug coment
Eigentlich ist die Idee die Natürliche Art und Weise.. trotzdem müssen Sie manuell fangen alle möglichen Fehler. ich gebe dir Beispiel. Beachten Sie, dass dieses Beispiel nur für Klarheit zwischen der unteren Schicht und der höheren Schicht.
zum Beispiel, Sie haben eine Klasse in der Mitte der Schicht (des Geschäftsprozesses):
in die übergeordnete Ebene (ich nehme an, in Ihrem Blick - MXML -) Sie fangen die Ausnahme wie unten:
immer noch es ist nicht eine Magie, wie Sie erwarten, aber es ist die beste Praxis. Rember nur versuchen Sie fangen nur auf code, der hat die Möglichkeit zu werfen, Fehler da versuchen zu fangen ist teuer.
ktutnik, es wäre so nett, wenn Sie mir zeigen, kleine ex zu tun wie das. Wie kann ich fangen Fehler, die durch höhere layer-Klasse, die enthält myClass.wie?!
Danke, ktutnik. Dies ist der Weg, ich werde implementieren, die die Fehler abfangen Problem. viel Glück
InformationsquelleAutor ktutnik
Der beste Weg ist die Verwendung von try catch:
InformationsquelleAutor Gus Leo
Können Sie alle fangen nicht behandelt Fehler in Ihrem Programm mit
UncaughtErrorEvent
Klasse.So, vielleicht ist es das, was Sie wollen. Es ist ein Beispiel aus den docs (konnte Sie
addEventListener
im Konstruktor der main-Klasse):}
Sehen die docs, bitte.
InformationsquelleAutor sergzach