Hallo Forum,
ich bin Anfängerin in Java und komme leider mit Exceptions nicht klar.
Ich verstehe, dass es generell 3 Arten gibt (Checked, Unchecked Exceptions und Errors).
Checked-Exceptions muss man immer behandeln, Unckecked nicht zwingend und Errors gar nicht.
Was mir nicht klar ist, wann muss ich die mögliche Exceptions in "throws"-Klausel reinnehmen und wann weglassen? Zum Beispiel beim Ausführen des folgenden Programms bekomme ich einen Compilierfehler, weil ich FileNotFoundException sowohl werfe, als auch fange.
Meine Fragen:
1. Wo werfe ich genau die FileNotFoundException? Ich dachte, dass ich dafür explizit "throw new FileNotFoundException();" schreiben müsste?
2. Wäre es auch falsch, IOException in "throws"-Klausel auszuführen?
Capri
ich bin Anfängerin in Java und komme leider mit Exceptions nicht klar.
Ich verstehe, dass es generell 3 Arten gibt (Checked, Unchecked Exceptions und Errors).
Checked-Exceptions muss man immer behandeln, Unckecked nicht zwingend und Errors gar nicht.
Was mir nicht klar ist, wann muss ich die mögliche Exceptions in "throws"-Klausel reinnehmen und wann weglassen? Zum Beispiel beim Ausführen des folgenden Programms bekomme ich einen Compilierfehler, weil ich FileNotFoundException sowohl werfe, als auch fange.
Code:
import java.io.*;
public class Exueb5 {
public static void main(String[] args) throws FileNotFoundException {
try {
FileReader f=new FileReader("Exueb5.java");
while (true) {
int c=f.read();
if (c<0)
return;
System.out.print((char)c);
}
}
catch(IOException e) {}
catch(FileNotFoundException e) {}
}
}
Meine Fragen:
1. Wo werfe ich genau die FileNotFoundException? Ich dachte, dass ich dafür explizit "throw new FileNotFoundException();" schreiben müsste?
2. Wäre es auch falsch, IOException in "throws"-Klausel auszuführen?
Capri