unchecked Exception

OliW

Aktives Mitglied
Moin Kollegen :),

eine Frage zum Thema Exceptions.
Weshalb gehört eine "IllegalArgumentException" zu den unchecked Exceptions? Schon klar. Das ist eine Kindklasse von "RuntimeException" Aber:
Annahme: Ich übergebe einen String (z.B. Name, Adresse etc.) aus einer Usereingabe als Parameter an eine Methode, die überprüfen soll, ob der String
!=null ist.

*****************************************
public void setName(String name){
if(name == null){
throw new IllegalArgumentException("Name may not be null.");
}
if(name.trim().isEmpty()){
throw new IllegalArgumentException("Name may not be empty.");
}
this.name = name;
****************************************

Dann ist das doch eine typischer Fall für eine "IllegalArgumentException" ("Feld darf nicht leer sein").
Da dieser Fehler aber nicht aus der Programmlogik, sondern aufgrund einer Usereingabe kommt, müsste das doch aber eine klare "checked Exception" sein.
Ich werfe die Exception an den Aufrufer (Usereingabe) und behandle sie da mit einem try-catch.

Oder sehe ich da was falsch.

v.D. Oli
 
X

Xyz1

Gast
Der user darf die (raw) Exception (gleich ob checked oder nich) niemals sehen...

Zweitens, ab Java 11 kannst du .isBlank() machen.
 
K

kneitzel

Gast
Exception heißt übersetzt Ausnahme. Diese sollten nur auftreten, wenn etwas außergewöhnliches passiert. Etwas das nicht erwartet werden konnte. Also eine wirkliche Ausnahme.

Alle Dinge, die man erwarten kann, sollte man aktiv überprüfen! Also bei einer Benutzereingabe wird diese doch bitte immer validiert! Damit ist das eine Exception, die eigentlich nicht auftreten sollte. Sollte diese doch auftreten, dann ist es eine Sache des Entwicklers. Es macht keinen Sinn, hier den Entwickler mit einer Checked Exception zu zwingen, diese Exception abzufangen, denn es ist Unsinnig, da der Entwickler in der Regel Eingaben verifiziert. (Wenn er es nicht möchte, dann kann er aber auch gerne diese Exception abfangen.

Somit macht es aus meiner Sicht sehr wohl Sinn, dass dies eine unchecked Exception ist. Wenn diese Auftritt, dann war der Entwickler schlicht zu blöd, vernünftigen Code zu schreiben, weil er die Methode mit ungültigen Parametern aufgerufen hat.
 

OliW

Aktives Mitglied
Exception heißt übersetzt Ausnahme. Diese sollten nur auftreten, wenn etwas außergewöhnliches passiert. Etwas das nicht erwartet werden konnte. Also eine wirkliche Ausnahme.

Alle Dinge, die man erwarten kann, sollte man aktiv überprüfen! Also bei einer Benutzereingabe wird diese doch bitte immer validiert! Damit ist das eine Exception, die eigentlich nicht auftreten sollte. Sollte diese doch auftreten, dann ist es eine Sache des Entwicklers. Es macht keinen Sinn, hier den Entwickler mit einer Checked Exception zu zwingen, diese Exception abzufangen, denn es ist Unsinnig, da der Entwickler in der Regel Eingaben verifiziert. (Wenn er es nicht möchte, dann kann er aber auch gerne diese Exception abfangen.

Somit macht es aus meiner Sicht sehr wohl Sinn, dass dies eine unchecked Exception ist. Wenn diese Auftritt, dann war der Entwickler schlicht zu blöd, vernünftigen Code zu schreiben, weil er die Methode mit ungültigen Parametern aufgerufen hat.


So gesehen macht das Sinn. Ich bin davon ausgegangen, daß die checked Exception die Validierung ist. Aber klar. wenn es dann trotzdem zu einer Exception kommt, war meine vorherige Validierung Müll.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Unterschied zwischen Checked und unchecked Exception Java Basics - Anfänger-Themen 3
paulen1 Best Practice "Unchecked Assignment" Warnung beim erstellen eines 2D Arrays of Arraylists Java Basics - Anfänger-Themen 2
MiMa Was bedeutet unchecked or unsafe operations? Java Basics - Anfänger-Themen 6
N Unterschied zwischen Checked und Unchecked Exceptions Java Basics - Anfänger-Themen 12
R Note: uses unchecked or unsafe operations Java Basics - Anfänger-Themen 4
B Datentypen Casts typesafe machen? ("unchecked") Java Basics - Anfänger-Themen 10
N Generic clonen => eclipse empfiehlt @SuppressWarnings("unchecked") Java Basics - Anfänger-Themen 2
H Warning: unchecked Java Basics - Anfänger-Themen 5
D Wie "unchecked cast" hier vermeiden? Java Basics - Anfänger-Themen 2
M Generics - "Unchecked cast"-Warnung wegbekommen Java Basics - Anfänger-Themen 4
S ArrayList<Element> - "unchecked or unsafe operati Java Basics - Anfänger-Themen 13
P unchecked conversion to conform to Comparator Java Basics - Anfänger-Themen 3
C Unchecked Call? Wie Warnung beseitigen? Java Basics - Anfänger-Themen 3
G Frage zu: @SuppressWarnings("unchecked") Java Basics - Anfänger-Themen 4
S "Unchecked Cast" Warnung Java Basics - Anfänger-Themen 3
T "Unchecked or unsave Opertions"-Fehler beseitigen Java Basics - Anfänger-Themen 16
G hashtable und unsafe, unchecked Code Java Basics - Anfänger-Themen 3
S Fehlermeldung: uses unchecked or unsafe operations ? Java Basics - Anfänger-Themen 6
D Vector - unchecked Java Basics - Anfänger-Themen 8
I Exception wird gefangen, aber trotzdem in Error Log? Java Basics - Anfänger-Themen 10
W Null-Pointer Exception beim Programmstart Java Basics - Anfänger-Themen 8
Ostkreuz String Exception Java Basics - Anfänger-Themen 8
Fiedelbambu Exception in Application constructor Java Basics - Anfänger-Themen 3
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
F abbruch Exception lässt sich nicht erstellen Java Basics - Anfänger-Themen 2
U Warum kriege ich hier eine nullpointer exception, sehe den Fehler nicht (swing) Java Basics - Anfänger-Themen 1
F Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11 at main.main(main.java:11) Java Basics - Anfänger-Themen 2
M Exception in thread "main" java.util.NoSuchElementException Java Basics - Anfänger-Themen 2
N Exception beim Verwenden von Arraylist? Java Basics - Anfänger-Themen 10
B Compiler-Fehler Fehlermeldung Exception in thread, falsche Eingabewert Java Basics - Anfänger-Themen 2
S JavaKara Null Exception Error Java Basics - Anfänger-Themen 4
T Eigene Exception - ohne werfen abfangen Java Basics - Anfänger-Themen 2
LiFunk Exception: es dürfen nur Nummern eingelesen werden Java Basics - Anfänger-Themen 6
low_in_the_head Eigene Exception nutzen Java Basics - Anfänger-Themen 4
1 Exception Java Basics - Anfänger-Themen 2
S Kriege Fehler "Exception in thread" beim Benutzen von SubStrings. Java Basics - Anfänger-Themen 2
I JAX-RS Exception Handling Java Basics - Anfänger-Themen 4
L Meine erste eigene Exception Klasse Java Basics - Anfänger-Themen 10
J null exception Array Java Basics - Anfänger-Themen 5
H Frage zu Throw Exception Java Basics - Anfänger-Themen 2
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
M Wie kann ich bei int-Variablen im exception handler auf bestimmte Strings reagieren? Java Basics - Anfänger-Themen 5
C Exception-Frage Java Basics - Anfänger-Themen 3
B Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException Java Basics - Anfänger-Themen 8
I Exception bei Button mit wait() und notifyAll() Java Basics - Anfänger-Themen 3
N Wie teste ich eine geworfene Exception? Java Basics - Anfänger-Themen 8
R Methoden ArrayList clonen wirft exception Java Basics - Anfänger-Themen 3
D Scanner- Exception NoSuchElementException Java Basics - Anfänger-Themen 2
N Exception werfen bei falscher Datumseingabe Java Basics - Anfänger-Themen 14
A Exception handeling mit finally und objektreferenzen Java Basics - Anfänger-Themen 6
D Frage zu Strings einer Exception Java Basics - Anfänger-Themen 4
S Exception Java Basics - Anfänger-Themen 2
J Exception-Aufgabe Java Basics - Anfänger-Themen 8
S Verwenden von throw Exception an der Funktion Java Basics - Anfänger-Themen 2
R Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 5
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6
Z Fragen zu Exception (Throws/throw) Java Basics - Anfänger-Themen 7
OSchriever Exception für Abbrechen-Schaltfläche JOptionpane Java Basics - Anfänger-Themen 9
J Dateien in Verzeichnissen rekursiv auflisten wirft Exception Java Basics - Anfänger-Themen 4
J Exception unreachable Java Basics - Anfänger-Themen 12
P Exception werfen Java Basics - Anfänger-Themen 15
B EJB und Arquillian - bekomme Nullpointer Exception beim Aufruf der EJB Klasse Java Basics - Anfänger-Themen 40
S Exception bei Verwendung von LocalDate Java Basics - Anfänger-Themen 19
I Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 Java Basics - Anfänger-Themen 3
D Warum die Nullpointer Exception Java Basics - Anfänger-Themen 6
O Exception behandlung einfach Ueben mit Fakt! Java Basics - Anfänger-Themen 10
I OOP Was ist die "Exception Hierarchie" ? Java Basics - Anfänger-Themen 3
U Null Exception aber keine Ahnung warum Java Basics - Anfänger-Themen 5
G Exception und Ausgabe der Duplikate Java Basics - Anfänger-Themen 6
H Try Catch Throw Exception Java Basics - Anfänger-Themen 1
W Exception in Main abfangen oder in der Methode? Java Basics - Anfänger-Themen 10
F Referenz an ein Objekt in einer anderen Klasse erstellen(Nullpointer exception) Java Basics - Anfänger-Themen 6
Mosquera Exception Java Basics - Anfänger-Themen 5
M rekursive division/0 mit exception Java Basics - Anfänger-Themen 18
N Nullpointer exception Java Basics - Anfänger-Themen 4
L Eigene Exception schreiben bei zu langem Array Java Basics - Anfänger-Themen 10
R Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 10
I equals (Override) mit eigener Exception (keine Runtime-Exception) Java Basics - Anfänger-Themen 9
S Array Grenzen-Exception Java Basics - Anfänger-Themen 11
E InputStream im Servlet wirft Exception Java Basics - Anfänger-Themen 5
D Erste Schritte Java.lang.NullPointer.Exception Java Basics - Anfänger-Themen 8
G Arrays out of Bounds exception Java Basics - Anfänger-Themen 2
H Compiler-Fehler Out of Bunce Exception bei einem Char Java Basics - Anfänger-Themen 6
C Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2 Java Basics - Anfänger-Themen 3
C Null Pointer Exception Java Basics - Anfänger-Themen 10
F Klassen Eigene Exception Bedingungen festlegen Java Basics - Anfänger-Themen 2
G Null Pointer Exception Java Basics - Anfänger-Themen 4
GreenTeaYT Exception und zur OOP fragen? Java Basics - Anfänger-Themen 3
O Exception bei Parse-Vorgang Java Basics - Anfänger-Themen 17
T Exception Problem Java Basics - Anfänger-Themen 5
Z Getter/Setter NullPointer Exception Java Basics - Anfänger-Themen 6
W Nullpointer Exception bei .add(...) Java Basics - Anfänger-Themen 6
L Input/Output InputMismatch.Exception Java Basics - Anfänger-Themen 7
B Exception Liste von Liste Java Basics - Anfänger-Themen 3
D Throw Exception Java Basics - Anfänger-Themen 2
MiMa JavaDoc Exception @throws schlagen an Java Basics - Anfänger-Themen 4
J Exception in thread "main" Java Basics - Anfänger-Themen 1
B Exception richtig einbinden Java Basics - Anfänger-Themen 1
M Exception soll Werte mitgeliefert bekommen Java Basics - Anfänger-Themen 12
M Selbstdefinierte Exception Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben