2017-06-05 5 views
0

Gibt es eine Möglichkeit, dass ich eine Fehlermeldung in Java umgehen kann? Was passiert, wenn ich einen Fehler erhalte, aber es gibt keinen gangbaren Weg, mein Programm zu ändern? Was passiert, wenn ich vermute, dass ich einen Fehler von einem Codeblock bekommen kann, aber ich weiß nicht wann oder ob es passieren wird? Es gab viele Male, in denen ich etwas in meinem Code haben musste, aber einen Fehler erzeugte. Beispiel: Konvertieren einer Zeichenfolge in ein Float mit parseFloat().Bypass ein Java Fehler

Wie auch immer, dies zu tun?

+0

Wie die Antworten schlagen _Exception handling work_.Aber nichts kann getan werden, wenn es keine praktikable Möglichkeit gibt, mein Programm zu ändern? –

Antwort

2

Ja können Sie Laufzeitfehler in Java behandeln.

Exception Handling

Es gibt zwei Möglichkeiten, Ausnahmen zu behandeln.

  1. wegzuwerfen und ignorieren -

Wenn eine Ausnahme in einem Code von Programm auftreten einfach wegzuwerfen und ignorieren, dass eine Ausnahme auftreten (i.e.declare die Methoden als throws Exception).

Beispiel:

void method()throws IOException{ 

} 
  1. Fang und Griff -

Wenn ein Code-Snippet einen Exception Ort, um es in einem try Block zu erzeugen. Dann erwähnen Sie den Weg, um die Exception innerhalb der catch Block zu behandeln.

Beispiel für Fang und Griff:

try{ 
    double a= parseDouble("12.4a"); 
}catch(NumberFormatException e){ 
    System.out.println("cannot format"); 
} 

versucht hier 12.4a-double und Laden in a zu konvertieren. Seit 12.4a enthält Zeichen aNumberFormatException wird auftreten. du kannst damit umgehen. Im obigen Code drucke ich einfach einen Text. Aber Sie bekommen printStackTrace:

e.printStackTrace; 

Sie finally nach catch-Block hinzufügen. lesen Sie Orcale doc.

1

Ich denke, Sie eine try...catch Aussage benötigen.

try { 
    // parse your float here 
} catch (NumberFormatException ex) { // parsing a float might throw a NumberFormatException 
    // code in here will be executed if a NumberFormatException occurs 
}