异常
1.1 异常的基本概念
异常是导致程序中断的一种指令流,如果不对异常进行正确的处理,则可能导致程序的中断执行,造成不必要的损失。
public class test05
{
public static void main(String args[]){
int i = 10;
int j = 0;
System.out.println("异常出现前:");
int temp = i/j;
System.out.println("异常出现后:");
System.out.println(temp);
}
}
结果:
F:\java>javac test05.java
F:\java>java test05
异常出现前:
Exception in thread "main" java.lang.ArithmeticException: / by zero
at test05.main(test05.java:7)
出现异常,异常之后的语句不会执行,而是直接结束程序,并将错误报告给用户。。
1,2 异常处理
try{
}
catch(){
}
finaly{
}
public class test05
{
public static void main(String args[]){
int i = 10;
int j = 0;
System.out.println("异常出现前:");
try{
int temp = i/j;
System.out.println(temp);
}
catch(ArithmeticException e){
System.out.println("ArithmeticException:"+e);
}
System.out.println("程序结束");
}
}
结果;
F:\java>javac test05.java
F:\java>java test05
异常出现前:
ArithmeticException:java.lang.ArithmeticException: / by zero
程序结束
注意:出现异常之后的代码将不再被执行,而是跳到相应的catch语句中执行。
对于异常也可以设置其统一的出口,使用finally完成。
public class test05
{
public static void main(String args[]){
int i = 10;
int j = 0;
System.out.println("异常出现前:");
try{
int temp = i/j;
System.out.println(temp);
}
catch(ArithmeticException e){
System.out.println("ArithmeticException:"+e);
}
finally{
System.out.println("不管什么异常,都执行此代码");
}
System.out.println("程序结束");
}
}
结果:
F:\java>javac test05.java
F:\java>java test05
异常出现前:
ArithmeticException:java.lang.ArithmeticException: / by zero
不管什么异常,都执行此代码
程序结束
1.3