Wann sollten Sie sich für aktivierte oder nicht aktivierte Ausnahmen entscheiden?
Bei der Definition benutzerdefinierter Ausnahmeklassen in Java kämpfen Entwickler mit der Wahl zwischen aktivierten und deaktivierten ungeprüfte Ausnahmen. Um die geeignete Klassifizierung zu ermitteln, beachten Sie die folgenden Richtlinien:
Verwenden Sie geprüfte Ausnahmen, wenn:
-
Vorhersehbare, aber nicht vermeidbare Fehler: Geben Sie a an geprüfte Ausnahme, wenn der zugrunde liegende Fehler vernünftigerweise vorhersehbar ist, aber außerhalb der Kontrolle des Aufrufers liegt. Wenn beispielsweise ein Dateilesevorgang fehlschlägt, weil er während der Ausführung gelöscht wird, informiert eine überprüfte Ausnahme den Aufrufer treffend über diesen vorhersehbaren, aber unvermeidlichen Fehler.
-
Angemessene Wiederherstellung: Entscheiden Sie sich für a Eine aktivierte Ausnahme wird nur dann aktiviert, wenn der Fehler eine sinnvolle Wiederherstellung durch den Aufrufer ermöglicht. Wenn ein Benutzer versucht, auf eine nicht vorhandene Datei zuzugreifen, kann der Aufrufer den Benutzer nach einem alternativen Pfad fragen und so die Machbarkeit einer Wiederherstellung nach diesem vorhersehbaren Fehler demonstrieren.
Ungeprüfte Ausnahmen verwenden für:
-
Alle anderen außergewöhnlichen Bedingungen: Insgesamt Szenarios, die die Kriterien für geprüfte Ausnahmen nicht erfüllen, werden standardmäßig auf ungeprüfte Ausnahmen umgestellt. Dazu gehören Situationen, in denen der Fehler unvorhersehbar, vermeidbar oder nicht behebbar ist.
Neubewertung auf verschiedenen Ebenen:
Die Angemessenheit einer Ausnahmeklassifizierung kann variieren auf verschiedenen Ebenen eines Programms. Wenn die Ausnahme auf einer ungeeigneten Ebene abgefangen wird, berücksichtigen Sie Folgendes:
-
Überprüfte Ausnahmen in ungeprüfte Ausnahmen umschließen:Wenn eine überprüfte Ausnahme auf der aktuellen Ebene nicht behandelt werden kann, konvertieren Sie sie zu einer ungeprüften Ausnahme, um sie weiter zu verbreiten.
-
Konvertieren Sie ungeprüfte Ausnahmen in aktivierte Ausnahmen: Wenn umgekehrt eine ungeprüfte Ausnahme auf einer Ebene auftritt, auf der sie behandelt werden muss, lösen Sie sie erneut als geprüfte Ausnahme aus, um die Antizipation des vorhersehbaren Fehlers zu erzwingen.
Wartung Angemessene Abstraktion:
Verwenden Sie sowohl für aktivierte als auch für nicht aktivierte Ausnahmen die entsprechende Abstraktionsebene. Vermeiden Sie die Offenlegung von Implementierungsspezifischen Details, indem Sie generische Ausnahmeklassen verwenden, die die zugrunde liegende Implementierung kapseln. In einem Code-Repository wäre beispielsweise eine RepositoryException besser geeignet, Ausnahmen von Datenbank- oder Dateisystemimplementierungen zu verallgemeinern.
Das obige ist der detaillierte Inhalt vonGeprüfte oder ungeprüfte Ausnahmen in Java: Wann sollten Sie welche auswählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!