捕获异常
异常处理关键字:try、catch、finally、throw、throws
- try、catch
try
{
// 程序代码
}catch(ExceptionName e1)
{
//Catch 块
}
public class ExceptionTest {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
try{ //监听代码块
int a=input.nextInt();
int b=input.nextInt();
double sum=a/b;
System.out.println(sum);
}
catch(InputMismatchException e){
System.out.println("只能输入数字");
}
catch(ArithmeticException e){
System.out.println("分母不能为0");
}
catch(Exception e){ //Exception是所有异常的父类
System.out.println("发生了其他异常");
}
finally{ //不管是否出现异常,finally一定会被执行
System.out.println("程序结束");
}
}
}
多重捕获块
ry{
// 程序代码
}catch(异常类型1 异常的变量名1){
// 程序代码
}catch(异常类型2 异常的变量名2){
// 程序代码
}catch(异常类型2 异常的变量名2){
// 程序代码
}
- throw
如果一个方法没有捕获到一个检查性异常
https://blog.csdn.net/bpgdzfj/article/details/79297969
http://www.runoob.com/java/java-exceptions.html
- throws
-
finally
try{
// 程序代码
}catch(异常类型1 异常的变量名1){
// 程序代码
}catch(异常类型2 异常的变量名2){
// 程序代码
}finally{
// 程序代码
}