|
| |

VB.NET - Ein- und Umsteiger| Re: Allgemeine Ausnahmetypen nicht auffangen? | |  | | Autor: keco | | Datum: 20.01.12 16:26 |
| 1.) Meinst du denn so etwas: Throw New Exception("Fehler") ?
In diesem Fall ist es äußert nachteilig eine solche Exception auszulösen. Denn hierbei kannst du im späteren Programmverlauf nicht mehr nachvollziehen woher der Fehler kommt und vorallem wieso er auftrat. Die Basisklasse enthält keine spezifischen Informationen zu einer speziellen Ausnahme. Selbst mit einer übergebenen Fehlerinformationen kannst du in einer komplexeren Try-Catch-Anweisung mit mehreren Catch-Blöcken nicht speziell *nur diesen einen Fall* abfangen.
Stell dir vor du hast eine Klasse, die eine Datei in ein Verzeichnis speichern soll. Darin wirfst du für einen speziellen Fall (beispielsweise bei einer falschen Dateierweiterung) eine Ausnahme aus. Irgendwo im Programm willst du diese Methode aufrufen und fängst die verschiedenen Ausnahmen ab. Beispielsweise eine PathTooLongException, IOException, SecurityException und so weiter. Deine selbst erstellte Ausnahme kannst du nur abfangen, indem du auch die allgemeine Exception abfängst. Spezielle Informationen zum Fehler sind nicht enthalten, sondern nur die Meldung. Erstellst du eine eigene Klasse dafür könntest du eine Eigenschaft hinzufügen, die eine Liste der gültigen Dateierweiterungen angibt. Das ist alles nur beispielhaft.
Ansonsten solltest du alle möglichen Ausnahmen versuchen abzufangen, die auftreten könnten. Am einfachsten natürlich die, die durch das Framework ausgelöst werden können. Bei denen, die in der CLR auftreten können wird es schwieriger. Die ganz allgemeine Ausnahme kannst du auch abfangen, sollte aber zu keinem Zeitpunkt in deinem Programm auftreten, da du möglichst alle speziellen verarbeiten sollst. Dabei hast du auch die Möglichkeit entsprechend der Ausnahme aufräumarbeiten zu unternehmen. Beim Debuggen hilft es dir außerdem den aktuellen Programmzustand schneller zu erfassen.
2.) Was genau meinst du damit? Die Ausnahme erneut auszulösen kann sinnvoll sein. Du kannst beispielsweise in einer Methode bestimmte Ausnahmen abfangen, die du programmtechnisch automatisiert korrigieren kannst. Alle anderen Ausnahmen, bei denen es mehrere Möglichkeiten der Behebung gibt kannst du dadurch weiterleiten. Die Aufrufliste wird dabei weitergeführt, wenn du die Ausnahme nicht explizit angibst. Dazu kannst du dir diese Regel anschauen. Durch Angabe der Ausnahme wird die Stapelüberwachung in der Methode erneut begonnen. |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
sevOutBar 4.0 
Vertikale Menüleisten á la Outlook
Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Weitere InfosTipp des Monats Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
| |
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|