Heim >Java >javaLernprogramm >Ausnahmebehandlung in Java
1. Beispiel 1
//try-catch behandelt Ausnahmen
public class Error { public static void main(String[] args) { int num1=34,num2=0; //使用try包裹住会产生异常的代码段 try{ System.out.println(num1/num2); } //使用catch去处理对应的异常 catch(ArithmeticException error){ //处理方法 System.err.println("运算错误,除数不能为0!"); } System.out.println("程序运行结束!"); } }
Ergebnisüberprüfung:
Bedienungsfehler, der Divisor darf nicht 0 sein!
Das Programm ist fertig!
2. Beispiel 2
import java.util.InputMismatchException; import java.util.Scanner; public class Error { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入第一个数字:"); //使用try包裹住会产生异常的代码段 try{ int num1=input.nextInt(); System.out.println("请输入第二个数字:"); int num2=input.nextInt(); System.out.println(num1/num2); } //使用catch去处理对应的异常 catch(ArithmeticException error1){ //处理方法 System.err.println("运算错误,除数不能为0!"); }catch(InputMismatchException error2){ System.err.println("请输入正确的数字!"); } System.out.println("程序运行结束!"); } }
Ergebnisüberprüfung:
Ergebnis eins:
Bitte geben Sie die erste Zahl ein:
123
Bitte geben Sie die zweite Zahl ein:
123
1
Das Programm ist fertig!
Ergebnis 2:
Bitte geben Sie die erste Zahl ein:
123
Bitte geben Sie die zweite Zahl ein:
b
Bitte geben Sie die richtige Zahl ein!
Das Programm ist fertig!
Ergebnis drei:
Bitte geben Sie die erste Zahl ein:
123
Bitte geben Sie die zweite Zahl ein:
0
Operationsfehler, Divisor Das geht nicht sei 0!
Das Programm ist fertig!
3. Beispiel 3
/ Konvertieren Sie die Benutzereingabezeichenfolge in eine Ganzzahl
3.1
public class Error { String str; public Error(String str) { this.str = str; } public String Transform(){ try{ int num = Integer.parseInt(str); }catch(NumberFormatException num){ System.out.println("字符串转整型,请输入正确的数字:"); }catch(Exception e){ } return str; } }
//Schreiben Sie eine Testklasse, rufen Sie die Datentypkonvertierungsmethode auf und übergeben Sie die Parameter „Gut!“, 20
public class ErrorDemo { public static void main(String[] args) { Error er = new Error("Good!"); er.Transform(); System.out.println(er.str); } }
Zeichenfolge in Ganzzahl umwandeln, bitte geben Sie die richtige Zahl ein:
Gut!
3.2
public class Error { int num = 0; public Error() { } public Error(int num) { this.num = num; } public int TransformtoInt(String str){ try{ int num1 = Integer.parseInt(str); }catch(NumberFormatException num){ System.err.println("字符串转整型,请输入正确的数字:"); }catch(Exception error){ error.printStackTrace(); } return num; } }
import java.util.Scanner; public class ErrorDemo { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入一个数字:"); String str = input.next(); Error toInt = new Error(); toInt.TransformtoInt(str); System.out.println(str); } }
Verifizierung:
Bitte geben Sie eine Zahl ein:
123
123
Bitte geben Sie eine Zahl ein:
abc
Um einen String in eine Ganzzahl umzuwandeln, geben Sie bitte die richtige Zahl ein:
abc
4. Beispiel 4
//[b]throws, throw throws eine Ausnahme[/b]
public class Error { String sex ; public Error() { } public String getSex() { return sex; } public void setSex(String sex) throws Exception { if(sex.equals("男")|sex.equals("女")){ this.sex = sex; }else{ throw new Exception("性别必须为男或者女!"); } } }
public class ErrorDemo { public static void main(String[] args) { Error er = new Error(); try{ er.setSex("熊"); }catch(Exception error){ error.printStackTrace(); } System.out.println("程序结束"); } }
java.lang.Ausnahme: Geschlecht muss männlich oder weiblich sein!
bei Error.setSex(Error.java:22)
bei ErrorDemo.main(ErrorDemo.java:9)
Programm endet
5,
Benutzerdefinierte Ausnahme
// Exception-Unterklasse erstellen, um [b]Excptionübergeordnete Klasse[/b] zu erben
//创建类 public class Error { String sex ; public Error() { } public String getSex() { return sex; } public void setSex(String sex) throws Exception { if(sex.equals("男")|sex.equals("女")){ this.sex = sex; }else{ throw new ExceptionDemo("性别必须为男或者女!"); } } }
//创建ExceptionDemo子类 public class ExceptionDemo extends Exception { public ExceptionDemo() { super(); } public ExceptionDemo(String message) { super(message); } }
//创建测试类 import java.util.Scanner; public class ErrorDemo { public static void main(String[] args) { Error er = new Error(); try{ Scanner next = new Scanner(System.in); System.out.println("请输入性别:"); er.setSex(next.next()); }catch(Exception error){ error.printStackTrace(); } System.out.println("程序结束!"); } }
Ergebnisüberprüfung:
Bitte Geschlecht eingeben:
Männlich
Der Vorgang ist beendet!
Bitte geben Sie Ihr Geschlecht ein:
nan ExceptionDemo: 性别必须为男或者女! at Error.setSex(Error.java:23) at ErrorDemo.main(ErrorDemo.java:10)
Das Programm ist beendet!
Das Obige ist der Inhalt der Java-Ausnahmebehandlung. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn).