(一)异常:
在程序运行过程中,出现的不正常情况叫做异常
注意:
1、在程序中,错误可能产生于程序员没有预料到的各种情况,或者超出程序员可控范围的环境,
例如用户的坏数据、试图打开一个不存在的文件等,为了能够及时有效地处理程序中的运行错误
Java 专门引入了异常类
(二)异常的产生
1、Java 内部错误发生异常,Java 虚拟机产生的异常
2、我们把生成异常对象,并把它提交给运行时系统的过程称为拋出(throw)异常。运行时系统在
方法的调用栈中查找,直到找到能够处理该类型异常的对象,这一个过程称为捕获(catch)异常
(三)、捕获异常
try -- 用于监听。将要被监听的代码(可能抛出异常的代码)放在try语句块之内,当try语句块内发生异常时,异常就被抛出
catch --用于捕获异常。catch用来捕获try语句块中发生的异常
finally --finally语句块总是会被执行,它主要用于回收在try块里打开的物力资源,只有finally块,执行完成之后,才会回来执行try或者catch块中的return或者throw语句,如果finally中使用了return或者throw等终止方法的语句,则不会跳回执行,直接停止
public class TestException {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("请输入被除数:");
try{
int num1 = in.nextInt();
System.out.println("请输入除数:");
int num2 = in.nextInt();
System.out.println( String.format("%d/%d = %d",num1,num2,num1/num2));
}catch (ArithmeticException e){
e.printStackTrace();
}catch (InputMismatchException e){
e.printStackTrace();
}catch (Exception e){
e.printStackTrace();
}
System.out.println("感谢使用本程序!");
}
}