Java sagt, wenn wir eine checked Ausnahme von einer Methode werfen, dann müssen wir entweder deklarieren oder es mit try/catch Block umgeben. Ich verstehe nicht, warum es deklariert oder umgibt es mit try/catch-Block, weil nur durch die Ausnahme zu erklären, können wir nicht mit der Ausnahme umgehen, aber wenn wir es mit try/catch-Block umgeben, können wir damit umgehen. Wenn oben der Fall ist, wie wird man dann als Alternative zu anderen betrachtet?Die Ausnahme mit try/catch-Block in Java deklarieren oder umgeben
Antwort
Zwei Optionen sind verfügbar 1. Die Ausnahme auslösen -> Dies bedeutet, dass das Programm beim Auftreten der Ausnahmebedingung erwartet, dass der Aufrufer es behandelt. 2. Versuchen/fangen -> dies bedeutet, dass die Methode selbst damit umgehen wird.
Der Unterschied ist subtil und ja, manchmal fangen wir die Ausnahme von uns in der nächsten Schicht geworfen. Aber wenn Sie diese Aussagen sorgfältig betrachten, ist das der Hauptunterschied zwischen den beiden Ansätzen.
In großen Teams arbeiten oft Unterteams an Layern. Die inneren Schichten können einfach die Ausnahme auslösen und die weitere Ausführung des Flusses stoppen. Äußere Ebenen sollen es fangen und eine anmutige Fehlermeldung oder einen würdevollen Weg zeigen, mit diesen Ausnahmen umzugehen, so dass der Benutzer die Java-Stack-Ablaufverfolgung nicht sehen kann.
Hoffe, das hilft.
- 1. Java Ersetzen von Questionmarks, die nicht von Anführungszeichen umgeben sind
- 2. Java regulären Ausdruck für String umgeben von „“
- 3. Java One Space Ersetzen von Zahlen umgeben, mit zwei Räumen
- 4. Deklarieren von Variablen mit diesem oder var?
- 5. So deklarieren Sie ein Array in Java
- 6. Throw Ausnahme in Java
- 7. Python-Ausnahme in Ausnahme
- 8. fehlender Methodenkörper, oder deklarieren Sie abstrakt
- 9. Eine Ausnahme mit commons.logging in Java protokollieren?
- 10. Hilfe mit Null-Zeiger-Ausnahme in Java
- 11. Scheibe deklarieren oder Scheibe machen?
- 12. Wie deklarieren Array Elemente in Java flüchtig?
- 13. Ersetze Komma, umgeben von String mit Semikolon in Netbeans
- 14. Ausnahme in Java Umgang schließlich
- 15. Finde Elemente, die ein Element in einem Array umgeben
- 16. Deklarieren eines Java-Objekts mit seinem Typ/Klassennamen als Zeichenfolge
- 17. Nummer Format Ausnahme in Java
- 18. Befehl zum Umgeben eines Zeichens mit Leerzeichen in vim
- 19. Java "nicht vergleichbar" Ausnahme?
- 20. Java-Ausnahme String-Filter
- 21. Griff Java-Ausnahme in Thread.run
- 22. Java-Ausnahme Namenskonventionen
- 23. Java 8 Lieferant Ausnahme
- 24. OpenCV Java Ausnahme
- 25. Was bewirkt 'deklarieren' in 'deklarieren von Klassenaktionen deklarieren'?
- 26. Java: Spring Framework: Nested Maps deklarieren
- 27. JAVA Alternative zum Deklarieren von TreeMap
- 28. Umgeben Sie einige angegebene Wörter mit span in jQuery?
- 29. Umgeben Sie alle Zeilen in einer Textdatei mit Anführungszeichen ('irgendwas')
- 30. Route :: Auth nicht in Middleware umgeben
[Angeben der Ausnahmen, die von einer Methode ausgelöst werden] (http://docs.oracle.com/javase/tutorial/essential/exceptions/declaring.html) – Arc676
Es ist eine Alternative in dem Sinne, dass der Code nur kompiliert wird, wenn Sie mach das eine oder andere. Das bedeutet nicht, dass das Auslösen einer Ausnahme dasselbe ist wie das Auffangen. Wenn Sie es werfen wollen, dann brauchen Sie Würfe, wenn Sie es fangen wollen, müssen Sie versuchen/fangen. Wenn Sie es nicht in der throws-Klausel angeben und es auch nicht abfangen, wird es nicht kompiliert. –