用try-catch和try-catch-finally来处理异常
若有多个异常,可分别用不同的catch捕获处理
处理多个异常注意异常捕获的顺序,小的在前,大的在后

在try-catch块执行之后,try-catch外的代码其他语句会继续按顺序执行

一、try-catch(多catch块)-finally
(1)try块:负责捕获异常,一旦try中发现异常,程序的控制权将被移交给catch块中的异常处理程序。【try语句块不可以独立存在,必须与 catch 或者 finally 块同存】
(2)catch块:如何处理?比如发出警告:提示、检查配置、网络连接,记录错误等。执行完catch块之后程序跳出catch块,继续执行后面的代码。
·编写catch块的注意事项:多个catch块处理的异常类,要按照先catch子类后catch父类的处理方式,因为会【就近处理】异常(由上自下)。
(3)finally:最终执行的代码,用于关闭和释放资源等
一、try-catch(多catch块)-finally
(1)try块:负责捕获异常,一旦try中发现异常,程序的控制权将被移交给catch块中的异常处理程序。【try语句块不可以独立存在,必须与 catch 或者 finally 块同存】
(2)catch块:如何处理?比如发出警告:提示、检查配置、网络连接,记录错误等。执行完catch块之后程序跳出catch块,继续执行后面的代码。
·编写catch块的注意事项:多个catch块处理的异常类,要按照先catch子类后catch父类的处理方式,因为会【就近处理】异常(由上自下)。
(3)finally:最终执行的代码,用于关闭和释放资源等
多种catch块捕获多种异常

finally放一些最终执行的代码
try{
//一些会抛出异常的方法
}catch (Exception e){
//处理该异常的代码块
}catch(Exception e){
//处理该异常的代码块
}
从子类到父类
Scanner input = new Scanner(System.in);
try{
System.out.println("请输入第一个数:");
int one = input.nextInt();
System.out.println("请输入第二个数:");
int two = input.nextInt();
System.out.println("两数相除的结果为:"+one/two);
}catch(InputMismatchException e){
System.out.println("你应该输入整数");
}catch(ArithmeticException e){
System.out.println("除数不能为0");
}catch(Exception e){
System.out.println("我是不知名异常");
}finally{
//最终代码
}
处理完异常后进行的善后工作(如关闭一些连接,一些打开的文件):用finally语句块
处理异常的顺序:先小后大。先子类后父类
当一段程序中抛出多个异常时,使用多个catch块进行处理
try catch处理异常例子:
子类在前,父类在后
处理异常0
处理异常方法
java异常处理
try-catch以及try-catch-finally
try{
//一些会抛出异常的方法
}catch(Exception e){
//处理该异常的代码块
}例如
try{
System.out.println("请输入你的年龄:");
Scanner input = new Scanner(System.in);
int age = input.nextInt();
System.out.println("十年后你"+(age+10)+"岁");
}catch(InputMismatchException e){
System.out.println("你应该输入整数!");
}
System.out.println("程序结束");多重catch语句:(先子类后父类)

多重catch:先子类exception后父类exception
异常处理
try{
//一些会抛出异常的方法
}catch(Exception e){
//处理该异常的代码块---先子类后父类 从小到大
}finally{
//最终将要执行的一些代码
}
如果try语句块中的方法确实抛出异常,则抛出异常的终止执行,程序的控制权将交给catch块中的异常处理程序。
2.写多重catch语句块时,从小到大,子类到父类写。
Scanner input = new Scanner(System.in);里的System.in是什么意思
还有int one = input.nextInt();这个input.nextInt()又是什么意思啊
System.in是System(系统)类,in是System的输入流
input.nextInt()作用是在控制台输入int类型的数据
InputMismatchException,Java中的异常,检测是否为数字
finally语句块
try-catch-finally
多重catch块
try-catch
try{
//一些会抛出异常的方法
} catch (Exception e) {
//处理该异常的代码块
} catch (Exception2 e) {
//处理Exception2的代码块
}..(n个catch块).. {
} finally {
//最终将要执行的一-些代码
}
无论是否发生异常,finally 代码块中的代码总会被执行。
当保护代码块中发生一个异常时,会终止执行,程序的控制权将被移交给catch块中的异常处理程序。
多重catch块:可以在 try 语句后面添加任意数量的 catch 块。
保护代码中发生异常,异常被抛给第一个 catch 块。如果抛出异常的数据类型与 ExceptionType1 匹配,它在这里就会被捕获。如果不匹配,它会被传递给第二个 catch 块。如此,直到异常被捕获或者通过所有的 catch 块。
处理异常的基本语法:
try-catch以及try-catch-finally
try{
//- -些会抛出异常的方法
} catch (Exception e) {
//处理该异常的代码块
}
catch的顺序子类在前,父类在后。
try会抛出很多中类型的异常,该如何处理?
答:使用多种catch块的语法,但要注意顺序问题,先子类后父类。
如果try抛出异常将会发生什么呢?
答:抛出异常的方法会终止执行,程序的控制权将被移交给catch块中异常处理程序。
异常处理
try-catch以及try-catch-finally
try{
//一些会抛出异常的方法
}catch(Exception e){
//处理该异常的代码块
}catch(Exception2 e){
//处理该异常的代码块
}finally{
//最终将要执行的一些代码
}