Bei der Ausnahmebehandlung wird auf das Auftreten anomaler oder außergewöhnlicher Bedingungen reagiert, die eine spezielle Verarbeitung erfordern, wodurch häufig der normale Ablauf der Programmausführung geändert wird.
Es gibt viele bekannte Best Practices zur Ausnahmebehandlung für sich. Ich kenne die "Do's and Don'ts" gut genug, aber die Dinge werden kompliziert, wenn es um Best Practices oder Muster in größeren Umgebungen geht. "Früh werfen, spät fangen" - habe ich schon oft gehört und es verwirrt mich immer noch. …
Ist das ein Gegenmuster? Es ist eine akzeptable Praxis? try { //do something } catch (Exception e) { try { //do something in the same line, but being less ambitious } catch (Exception ex) { try { //Do the minimum acceptable } catch (Exception e1) { //More try catches? } …
Die klassische Art zu programmieren ist mit try ... catch. Wann ist es angebracht, tryohne zu verwenden catch? In Python erscheint Folgendes legal und kann sinnvoll sein: try: #do work finally: #do something unconditional Der Code hat jedoch catchnichts. Ähnlich könnte man in Java denken, es wäre wie folgt: try …
Ich habe einen Code eines Kollegen gelesen und festgestellt, dass er häufig verschiedene Ausnahmen abfängt und stattdessen immer eine 'RuntimeException' auslöst. Ich fand das immer sehr schlecht. Liege ich falsch?
Vor mehr als 10 Jahren haben sie Ihnen beigebracht, Ausnahmespezifizierer zu verwenden. Da ich einer der torvaldischen C-Programmierer bin, der C ++ hartnäckig meidet, wenn ich nicht dazu gezwungen werde, lande ich nur sporadisch in C ++. Die Mehrheit der C ++ - Programmierer scheint sich jedoch über Ausnahmespezifizierer hinwegzusetzen. …
Ich schätze die neuen Java 8-Funktionen für Lambdas und Standardmethoden-Schnittstellen sehr. Trotzdem langweilen mich geprüfte Ausnahmen. Wenn ich zum Beispiel nur alle sichtbaren Felder eines Objekts auflisten möchte, möchte ich einfach Folgendes schreiben: Arrays.asList(p.getClass().getFields()).forEach( f -> System.out.println(f.get(p)) ); Da die getMethode jedoch möglicherweise eine aktivierte Ausnahme auslöst, die nicht mit …
Viele moderne Sprachen bieten umfangreiche Funktionen zur Ausnahmebehandlung , die Programmiersprache Swift von Apple bietet jedoch keinen Mechanismus zur Ausnahmebehandlung . Ich bin so durchdrungen von Ausnahmen, dass ich Probleme habe, mir darüber Gedanken zu machen, was dies bedeutet. Swift hat Behauptungen und natürlich Rückgabewerte. Aber ich habe Probleme damit, …
Ich weiß, dass ich in PHP eine Ausnahme vom Konstruktor auslösen kann, aber sollte ich das tun? Zum Beispiel, wenn der Wert eines Parameters nicht dem entspricht, den ich erwartet habe. Oder sollte ich es verschieben, eine Ausnahme auszulösen, bis eine Methode aufgerufen wird? Was sind in beiden Fällen Vor- …
Diese Frage gilt für alle OO-Programmiersprachen, die die Ausnahmebehandlung unterstützen. Ich verwende C # nur zu Illustrationszwecken. Ausnahmen sollen normalerweise ausgelöst werden, wenn ein Problem auftritt, das der Code nicht sofort verarbeiten kann, und dann in einer catchKlausel an einer anderen Stelle (normalerweise einem äußeren Stapelrahmen) abgefangen werden . F: …
In verschiedenen Sprachen (Java zumindest, denken Sie auch C #?) Können Sie Dinge wie if( condition ) singleStatement; while( condition ) singleStatement; for( var; condition; increment ) singleStatement; Wenn ich also nur eine Anweisung habe, muss ich keinen neuen Bereich hinzufügen { }. Warum kann ich das nicht mit try-catch …
Beispiel: foobar = new InputStreamReader(p.getInputStream(), "ISO-8859-1"); Da die Codierung fest codiert und korrekt ist, wird der Konstruktor niemals die in der Spezifikation deklarierte UnsupportedEncodingException auslösen (es sei denn, die Java-Implementierung ist fehlerhaft, in diesem Fall bin ich trotzdem verloren). Java zwingt mich sowieso, mit dieser Ausnahme umzugehen. Derzeit sieht es …
Ich frage mich, was sind die Vorteile von Maybe Monaden gegenüber Ausnahmen? Es sieht so aus, als ob dies Maybenur eine explizite (und recht platzraubende) Art der try..catchSyntax ist. update Bitte beachte, dass ich Haskell absichtlich nicht erwähne.
Statische Codeanalysatoren wie Fortify "beschweren" sich, wenn eine Ausnahme in einen finallyBlock geworfen wird Using a throw statement inside a finally block breaks the logical progression through the try-catch-finally. Normalerweise stimme ich dem zu. Aber vor kurzem bin ich auf diesen Code gestoßen: SomeFileWriter writer = null; try { //init …
Einige Sprachen (wie C ++ und frühe Versionen von PHP) unterstützen den finallyTeil eines try ... catch ... finallyKonstrukts nicht. Ist finallyjemals notwendig? Warum sollte ich diesen Code nicht einfach nach einem try ... catchBlock ohne finallyKlausel einfügen, weil der Code darin immer läuft ? Warum eins benutzen? (Ich suche …
Ich habe eine dreischichtige Spring-Web-App: Dao, Service und Controller. Ein Controller ruft niemals direkt das Dao an, sondern tut dies über die Service-Schicht. Derzeit wird eine Ausnahme (Laufzeit), die nicht behandelt wird, in den meisten Fällen von einer JSP abgefangen, die dem Endbenutzer eine Fehlermeldung anzeigt. Soll die Serviceebene alle …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.