Exceptions in methoden auslöesen = sauber?

Status
Nicht offen für weitere Antworten.
M

me3

Gast
Hi,

wollte mal fragen ob es "sauberes" programmieren ist wenn ich in methoden eigene exceptions auswerfe oder sollte man sowas umgehen?

z.B. wenn eine methode einen String / Integer zurückliefert, beid er berabeitung aber eine bedingung eintrigtt und der string nicht berabeitet werden konnte, sollte man dann null zurückliefern oder eine exception auslösen?
 
S

stev.glasow

Gast
Beschreib mal genauer was da passiert, aber eigentlich wäre ich für eine Exception, wenn z.B. das Eintreten dieser Bedingung von einem Übergabeparameter abhängt würde ich eine IllegalArgumentException werfen.
 

SnooP

Top Contributor
Du musst dir für dich definieren was die Methode für Eingabeparameter benötigt bzw. welche Schritte für die Methode "normal" sind... dann solltest du dir Ausnahmen überlegen. Wenn eine Ausnahmesituation eintritt, sollte auch eine Exception geworfen werden, weil das Programm ja dadurch unter Umständen fehlerhaft werden könnte - wenn man nur null liefert, dann ist das auch anders interpretierbar...
Beispielsweise kann die get-Methode bei einer leeren Liste durchaus null liefern, weil man damit unmissverständlich klar machen kann, dass die Liste wohl leer war. Ein entsprechender Swing-Container könnte z.B. trotzdem mit der gleichen Methode gefüllt werden - das Anzeigeelement wäre dann auch einfach nur leer...
Ne andere Sache ist z.B. ein fehlerhaftes Element in eine Liste einzufügen... beispielsweise ein Objekt, was da gar nicht reingehört und später zu Fehlern führen könnte - dann sollte auch ne Exception ausgelöst werden mit dem entsprechenden Hinweis.

In deinem speziellen Fall wäre ich auch für Exception - eine bestimmte Bedingung führt zu einer Ausnahmesituation - schwupp Exception ;)
 

Bleiglanz

Gesperrter Benutzer
geht ja auch irgendwie nicht anders

denn INNERHALB der Methode kannst du ja nicht mit der Ausnahme umgehen, also musst du die nach draussen melden

je nach Anwendung hilft manchmal auch

null als Rückgabewert für alle "nicht verarbeitbaren Eingaben"; aber das funktioniert natürlich nur dann, wenn null keinerlei "Bedeutung" hat
 

L-ectron-X

Gesperrter Benutzer
Eigentlich ist es doch so, dass man auch innerhalb der Methode prüft, ob Argumente etc. "sauber" sind.
So kann man entsprechend reagieren, um zunächst keine Exception werfen zu müssen.
Nur in Fällen, wo man wirklich nicht vorhersagen kann, was da kommt, bereitet man eine passende Exception vor.
 

Solour

Aktives Mitglied
naja gibt eben diverse fehlermöglichkeiten nicht...^^
-sowas wie die parameter sind nicht "sauber"
also fehler von dem was da die methode benutzt
-sowas wie ne IOException bei file-access
also fehler von niemandem direkt aber verhindert trotzdem (u.U.)weitere verarbeitung
-sowas wie OutofBoundsException
also fehler in der methode selbst

bei #1 kannst machen wie du magst, aber ner exception kannst ja den parameter-namen/typ mitgeben, damit der user (falls der direkt dahinter sitzt) damit was anfangen kann
u.U. bedeutet (wie ja schon erwähnt) ein return-wert null schon was ganz anderes.. dann auch exception

bei #2 musst du eben schauen ob dein tool evtl. ne abfrage macht obs fortfahren soll (falls möglich) oder nicht
z.B. wenn deine file 30files kopieren soll dann will ich schon evtl. eine bei ders net geht skippen aber evtl. auch alles rückgängig machen...

bei #3 bist du meist sicher eh am ***** weil wenn du damit rechnen würdest das da ne exception kommt würdest du das sicherlich vermeiden

imo ist das also immer ne frage der situation... aber generell sind exception eher guter stil, aber man kann auch in java mit fast allem unsinn treiben..:p
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Exceptions aus interface-Methoden Java Basics - Anfänger-Themen 2
M Test auf Exceptions schreiben Java Basics - Anfänger-Themen 11
berserkerdq2 Habe zwei exceptions, welche ist ein Kommunikationsfehler und welche ein Ausgabefehler? Java Basics - Anfänger-Themen 4
julian112 Input/Output .gz bzw. .txt Datei Einlesen und Umgang mit Exceptions Java Basics - Anfänger-Themen 1
C Exceptions identifizieren Java Basics - Anfänger-Themen 5
A Exceptions mit objektreferenzen Java Basics - Anfänger-Themen 4
A Exceptions und methods Java Basics - Anfänger-Themen 2
A Cannot find symbol bei exceptions Java Basics - Anfänger-Themen 2
A Exceptions und Packages Java Basics - Anfänger-Themen 6
B JUnit / Exceptions/ try-catch Java Basics - Anfänger-Themen 6
X Exceptions Benutzereingaben Java Basics - Anfänger-Themen 4
F Exceptions in Interfaces Java Basics - Anfänger-Themen 4
F Mehrere Exceptions in einem Catch-Block abfangen Java Basics - Anfänger-Themen 12
L Exceptions und Konten Java Basics - Anfänger-Themen 21
D Frage zu Exceptions Java Basics - Anfänger-Themen 8
I Wie programmiert man Exceptions? Java Basics - Anfänger-Themen 4
N Unterschied zwischen Checked und Unchecked Exceptions Java Basics - Anfänger-Themen 12
C Erste Schritte Exceptions nicht verstanden Java Basics - Anfänger-Themen 2
J Fragen zu Exceptions Java Basics - Anfänger-Themen 24
T Exceptions - ausgeführte Zeilen Java Basics - Anfänger-Themen 4
J Exceptions Java Basics - Anfänger-Themen 69
C Exceptions Java Basics - Anfänger-Themen 8
C Exceptions Java Basics - Anfänger-Themen 6
A ArrayQueue mit Exceptions und Vererbung Java Basics - Anfänger-Themen 3
F Exceptions Java Basics - Anfänger-Themen 6
J Frage zum Thema Exceptions (Try/Catch) Java Basics - Anfänger-Themen 3
M "Exceptions abfragen" Java Basics - Anfänger-Themen 6
Farbenfroh Exceptions Anfänger - Finde Fehler nicht Java Basics - Anfänger-Themen 7
Z Catch & Exceptions Java Basics - Anfänger-Themen 4
N Compiler-Fehler Drei Exceptions in GUIHack für Dreiecke auf MoveButtons Java Basics - Anfänger-Themen 36
V Welche Exceptions müssen importiert werden? Java Basics - Anfänger-Themen 3
S Exceptions Java Basics - Anfänger-Themen 7
M Vererbung Problem Vererbung/Exceptions Java Basics - Anfänger-Themen 9
S Verschachtelte Exceptions - Übersicht verbessern Java Basics - Anfänger-Themen 2
J Eclipse Exceptions Java Basics - Anfänger-Themen 2
K Schleifen und Exceptions Java Basics - Anfänger-Themen 8
K Exceptions auslagern Java Basics - Anfänger-Themen 15
R NullPointer Exceptions Java Basics - Anfänger-Themen 3
F Erste Schritte Übung zu Exceptions Java Basics - Anfänger-Themen 24
R Exceptions (try/catch) Java Basics - Anfänger-Themen 63
H Int Exceptions Java Basics - Anfänger-Themen 12
M Exceptions per throws oder try Java Basics - Anfänger-Themen 4
M Compiler-Fehler Queue als ArrayList mit Exceptions Java Basics - Anfänger-Themen 3
T Exceptions in einer Klasse Java Basics - Anfänger-Themen 3
B Eigene Exceptions entwerfen Java Basics - Anfänger-Themen 3
H Methoden Überflüssige Exceptions Java Basics - Anfänger-Themen 20
C Exceptions Java Basics - Anfänger-Themen 14
1 While Schleife Exceptions Java Basics - Anfänger-Themen 6
I Erste Schritte Eigene Fehlermeldungen bei Exceptions Java Basics - Anfänger-Themen 19
D Frage zu Exceptions Java Basics - Anfänger-Themen 12
M Compiler-Fehler Exceptions lieber throwen oder direkt catchen? Java Basics - Anfänger-Themen 8
T Exceptions Java Basics - Anfänger-Themen 19
B Wie finde ich Exceptions? Java Basics - Anfänger-Themen 19
Dit_ Input/Output Alle Exceptions protokollieren Java Basics - Anfänger-Themen 9
T Exceptions Java Basics - Anfänger-Themen 12
J Standard Exceptions abfangen Java Basics - Anfänger-Themen 5
F Exceptions werfen oder catchen?? Java Basics - Anfänger-Themen 14
D Exceptions - Ausnahmebehandlung Java Basics - Anfänger-Themen 19
D Frage zu Exceptions und der import Anweisung Java Basics - Anfänger-Themen 12
J Paar Fragen zu Exceptions Java Basics - Anfänger-Themen 16
G Verständnisproblem: Exceptions Java Basics - Anfänger-Themen 17
S Exceptions bei push/pop in Stack Java Basics - Anfänger-Themen 8
C Exceptions beim Beenden Java Basics - Anfänger-Themen 2
C TimerTask und Exceptions Java Basics - Anfänger-Themen 5
E Klasse öffnen, mehrere Exceptions Java Basics - Anfänger-Themen 9
C Exceptions Java Basics - Anfänger-Themen 7
G 2 Exceptions in einer Methode Java Basics - Anfänger-Themen 3
firefexx Exceptions werfen Java Basics - Anfänger-Themen 5
0 Exceptions mehrfach fangbar? Java Basics - Anfänger-Themen 4
O Exceptions Java Basics - Anfänger-Themen 3
K Sinn eigener Exceptions Java Basics - Anfänger-Themen 11
H Diverse Exceptions - Troubleshooting Java Basics - Anfänger-Themen 3
J exceptions Java Basics - Anfänger-Themen 8
sc0p InterruptedExceptions und Exceptions - in Einem! Java Basics - Anfänger-Themen 5
M Frage zu Exceptions Java Basics - Anfänger-Themen 19
M Fragen zu Exceptions Java Basics - Anfänger-Themen 3
A Exception Verständnisfrage: Exceptions während, einer Statischenzuweisung abfangen Java Basics - Anfänger-Themen 10
D Exceptions werfen + beenden Java Basics - Anfänger-Themen 12
S File.renameTo und Exceptions / Fehlermeldung Java Basics - Anfänger-Themen 2
B Exceptions in Liste sammeln? Java Basics - Anfänger-Themen 5
O Eigene Exceptions Java Basics - Anfänger-Themen 11
O "restliche" Exceptions fangen Java Basics - Anfänger-Themen 8
H [Stil] Exceptions in der Klasse behandeln oder throwen? Java Basics - Anfänger-Themen 62
T Problem beim Werfen und Fangen von Exceptions Java Basics - Anfänger-Themen 2
V Aktivitätsdiagramm / Exceptions Java Basics - Anfänger-Themen 5
V Exceptions Java Basics - Anfänger-Themen 6
K Frage zu Exceptions -> Logging Java Basics - Anfänger-Themen 6
M Eigene Fehlermeldung bei Exceptions? Java Basics - Anfänger-Themen 12
R JDom Exceptions Java Basics - Anfänger-Themen 4
R Datei einlesen mit Exceptions Java Basics - Anfänger-Themen 2
Daniel_L Verwendung von try und catch bei exceptions Java Basics - Anfänger-Themen 7
C Reflection Exceptions behandeln Java Basics - Anfänger-Themen 6
G Exceptions - spiegeln wir da nicht einen Spiegel im Spiegel? Java Basics - Anfänger-Themen 10
G Verschiedene Exceptions zu gleichem Block Java Basics - Anfänger-Themen 6
U Frage zu Exceptions Java Basics - Anfänger-Themen 5
mwildam Philosophiefrage zu Exceptions und Rückgabewerten Java Basics - Anfänger-Themen 6
D Static, final Objekte mit Exceptions im Konstruktor Java Basics - Anfänger-Themen 2
G Exceptions Java Basics - Anfänger-Themen 4
G ServerSocket: Exceptions und Timeout Probleme Java Basics - Anfänger-Themen 10
M Exceptions bei Textfeldern abfangen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben