Home Windows ecommerce Treiber Server Entwicklung Software Security Internet Hardware Nicht IT Mobile Nintendo Suchen Multimedia Virtualisierung Kopie von Navi01b Provider


Fehlerbehandlung

-->Theorie Gerüst Kontrollstrukturen Variabeln DatenTypen Listen XAML Beispieldateien Lösungen c# Links Setup Kommentare WinForm Glossar Unverarbeitet
Modifizierer
Operatoren
Static
Vererbung
Using
Polimorphismus
Exception
Fehlerbehandlung
Aufbau
Ablauf
Verteilen
Unicode
Delcate
Event
Security
CAS
Eigenschaften
xml
Syntax

Fehlerbehandlung

Einfachste Version

Eine Anweisung, welche möglicherweise ein Fehler verursacht wird in einen Try Block verpackt. Sobald der Compiler auf die Fehlerhafte Anweisung trifft, wird im Catch Block weiter gefahren. Die Fehlerhafte Anweisung wird nicht ausgeführt.

Try {
    fehlerverursachende Anweisung
} catch {
    Anweisung im Fehlerfall
}

Im praktischen Beispiel:

Try {
    file.delete ("a:\\brief.doc");
} catch (Exception e) {
    MessageBox.Show ("Es ist ein Fehler aufgetreten.\n\r" + e)
}

Die Anweisung file.delete versucht eine Date zu löschen. Wenn der Datenträger nicht in Ordnung ist, was ja durchaus sein kann, tritt ein Fehler auf. in e ist der genaue Beschrieb des Fehlers zu finden.

Erweiterte Version 1

Der finally Block wird in jedem Fall durchlaufen. Egal ob ein Fehler im Try Block aufgetreten ist oder nicht. Dies ist zum Beispiel interessant um geöffnete Dateien auch im Fehlerfall noch zu schliessen.

Try {
    fehlerverursachende Anweisung
} catch {
    Anweisung im Fehlerfall
} finally {
    Anweisungen sowohl im Fehlerfall als auch im Normalfall
}

Erweiterte Version 2

Je nach dem zu erwarteten Fehler kann in einen unterschiedlichen Catch Block verzweigt werden.

Try {
    fehlerverursachende Anweisung
} catch (DivideByZeroException e) {
    Anweisung im Fehler Division geteilt durch 0
} catch (Exception e) {
    Anweisung bei allen anderen Fehlern
}

Exceptions auslösen

Um eine eigene Exception auszulösen kann die Anweisung Trow verwendet werden.

if (idy > myArray.Length)
    throw new IndexOutOfRangeException("idx=" + index.ToString());

 

 


Ihre Werbung hier

 

Haftungsausschluss: Verwendung der Informationen auf Ihre eigene Gefahr. Wir übernehmen keinerlei Haftung. Beachten Sie auch den Haftungsausschluss.


Wenn Sie Wünsche, Anregungen, Verbesserungen, Korrekturen oder sonstige Vorschläge zu dieser FAQ haben: . Wir freuen uns auf Ihr Mail.


 Und jetzt noch ein bisschen Werbung...

Stellensuche, Jobangebote unter www.notizia.ch/stellensuche