Frage zu Exceptions

  • Themenstarter Themenstarter use0815
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
U

use0815

Gast
Hallo, ich habe paar Fragen zu Exceptions..
In die FAQ habe ich diesmal schon geschaut 🙂


1. Kann ich mehrere Try&Catch Blötcke in meinem Programm haben?

2. Das mit Try&Catch habe ich verstanden... Wobei ich mir noch nicht sicher bin ist das anwenden von throws ....
Im Buch steht, dass die Exception dann nicht selbst behandlet wird sondern weitergegeben...
Wie muss ich mir das vorstellen... Heißt das dann einfach ich gebe an, dass ich weiß, dass die Exception auftreten könnte... und das programm dann auhc nicht abbricht wenn diese auftritt?


VIelen Dank im Voraus

u0815
 
1.) ja, hintereinander, verschachtelt, wie du willst,

2.) wenn du in deinem Code nicht gerade
throw new IllegalArgumentException();
stehen hast, dann bekommst du selber die Exception ja auch schon von jemanden weitergereicht,
von irgendeiner Operation, die du aufrufst, z.B. Lesen aus einer Datei

wenn du die selber throwst, dann machst du das gleiche, dann reichst du das Problem ebenso eine Stufe weiter hoch,
dann muss sich der Aufrufer der aktuellen Operation damit rumplagen
 
Danke schön für Deine schnelle Antwort.

zu 1:
Also sowas wie

Code:
try{
 // anweisungne 1
}
catch{
 // .....
}

// weiterer Code.............

try{
// Anweisung 2
}
catch{
// ..........
}
geht nicht?


zu 2.

Mit throw new.... löse ich ja selber eine neue Exception aus.. Das hab ich verstanden 🙂

Das mit dem Weitergeben ist mir noch nicht ganz klar...

Angenommen ich habe eine fkt hinter der steht throws ExceptionXYZ....

Dann wird diese an den Aufrufer zurückgegeben.
Ich rufe die Fkt. aber in meiner Main auf.... myFunc(123)....

Heißt das ich müsste dann in meiner Main-Funktion ein Try&Catch haben?
 
1. Kann ich mehrere Try&Catch Blötcke in meinem Programm haben?
Stell dir ein Programm mit 50.000 Zeilen und 1000 Klassen vor?
JA man kann mehrer Try Catch Blöcke haben

Mit throw new.... löse ich ja selber eine neue Exception aus.. Das hab ich verstanden

Das mit dem Weitergeben ist mir noch nicht ganz klar...

Angenommen ich habe eine fkt hinter der steht throws ExceptionXYZ....

Dann wird diese an den Aufrufer zurückgegeben.
Ich rufe die Fkt. aber in meiner Main auf.... myFunc(123)....

Heißt das ich müsste dann in meiner Main-Funktion ein Try&Catch haben?
ja, oder main wirft sie weiter
public static void main(String[] args) throws IOException {...
dann wird jedoch das programm beendet.
 
> Heißt das ich müsste dann in meiner Main-Funktion ein Try&Catch haben?

heißt es, oder wieder dort genauso weiterthrowen

---------

> Also sowas wie [..] geht nicht?

ich sage 'ja' zu deine Frage ob es geht und du fragst nun 'also geht es nicht'?
zumal du das gut ausprobieren kannst
 
zu 1:
Also sowas wie


Code:
try{ 
// anweisungne 1 
} 
catch{ 
// ..... 
} 

// weiterer Code............. 

try{ 
// Anweisung 2 
} 
catch{ 
// .......... 
}
geht nicht?

(Exception e) nicht vergessen!

Code:
try {
			
		}
		catch (Exception e) {
		}
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben