JAVA SE 异常处理
简介
异常:阻止程序正常运行的问题。
异常链:将捕获的异常包装进一个新的异常中,并重新抛出的异常处理方式。
一个方法应该抛出定义在相同的抽象层次上的异常,但不会丢弃更低层次的信息。
关键词:
- throw:将产生的异常抛出(动作)
- throws:声明要抛出的异常的名字(声明)
- try:捕获异常,用于会产生异常的代码块
- catch:处理异常,对try中捕获的异常进行处理
- finally:最后处理的区域,一定会进行的,通常用于清除操作
异常的分类:
应用实例
//自定义异常
-
class ExceptionName extends Exception{
-
public ExcetionName(){
-
super();
-
}
-
}
//抛出异常
-
public void methodName() throws Exception{
-
//调用会抛出的异常的方法或者
-
throw
new Exception();
-
}
//try-catch语句、try-catch-finally语句
-
Scanner input =
new Scanner(system.in);
-
try{
-
int one = input.nextInt();
-
int two = input.nextInt();
-
System.out.println(one/two);
-
-
}
catch(InputMismatchException e1){
-
System.out.println(
"应该输入整数");
-
-
}
catch(ArithmeticException e2){
-
System.out.println(
"除数不能为零");
-
-
}
catch(Exception e3){
-
System.out.println(
"未知异常");
-
-
}
finally{
-
//finally语句一定执行。进行善后工作。
-
System.out.prinlnt(
"执行完毕!");
-
}
注意事项
- 捕捉异常先小后大
- 最后添加catch(Exception),处理遗留的异常
- 尽量添加finally语句释放资源
- 处理异常,不能只用e.printStackTrace()
原文地址https://blog.csdn.net/weixin_38500325/article/details/81587857