Ist es empfehlenswert, eine RuntimeException abzufangen?
Ist es empfehlenswert, eine RuntimeException abzufangen?

Video: Ist es empfehlenswert, eine RuntimeException abzufangen?

Video: Ist es empfehlenswert, eine RuntimeException abzufangen?
Video: Vorlesung 12 2022 - Exception Handling 2024, Kann
Anonim

Decke- fangen alles - entweder Exception oder Throwable, was viel schlimmer ist - ist nicht a gute Übung weil Sie davon ausgehen, dass Sie sich von jedem außergewöhnlichen Verhalten erholen können. Nebenbei: Ja, fangen Ausnahme wird auch RuntimeException abfangen , da Exception eine Oberklasse von. ist LaufzeitAusnahme.

In ähnlicher Weise können Sie sich fragen, ob es eine gute Vorgehensweise ist, RuntimeException abzufangen?

Decke- fangen alles - entweder Exception oder Throwable, was viel schlimmer ist - ist nicht a gute Übung weil Sie davon ausgehen, dass Sie sich von jedem außergewöhnlichen Verhalten erholen können. Nebenbei: Ja, fangen Ausnahme wird auch RuntimeException abfangen , da Exception eine Oberklasse von. ist LaufzeitAusnahme.

Man kann sich auch fragen, ob es sinnvoll ist, NullPointerException abzufangen? Es ist generell schlecht Üben Sie, NullPointerException abzufangen . Programmierer in der Regel Fang NullPointerException unter drei Umständen: Das Programm enthält eine Nullzeiger-Dereferenzierung. Fangen Die resultierende Ausnahme war einfacher als das Beheben des zugrunde liegenden Problems.

Anschließend stellt sich die Frage, können wir RuntimeException abfangen?

Laufzeitausnahmen kann treten irgendwo in einem Programm auf und in einem typischen einer Sie kann sehr zahlreich sein. Somit ist der Compiler tut das nicht verlangen du fängst oder Laufzeitausnahmen angeben (obwohl du kannst ). Einer Fall, in dem es üblich ist, a. zu werfen LaufzeitAusnahme ist, wenn der Benutzer eine Methode falsch aufruft.

Was ist eine RuntimeException?

LaufzeitAusnahme ist die Oberklasse dieser Ausnahmen, die während des normalen Betriebs der Java Virtual Machine ausgelöst werden können. Eine Methode muss in ihrer throws-Klausel keine Unterklassen von. deklarieren LaufzeitAusnahme die während der Ausführung der Methode geworfen, aber nicht abgefangen werden kann.

Empfohlen: