一、异常
1、异常介绍
2、异常体系图(重要)
3、异常处理
(1)try-catch-finally
(2) throws
注:JVM 处理异常 1、输出异常信息 2、退出程序
如果程序员没有显示处理异常,默认得就是 throws
4、try-catch-finally
public class TryCatchExercise01 {
public static void main(String[] args) {
/*
如果用户输入的不是整数,就提示他反复输入,直到输入一个整数为止
思路:
1、创建一个Scanner对象
2、使用无限循环去接收一个输入
3、然后将该输入的值转成int
4、如果在转换时抛出了异常,说明输入的内容不是一个可以转成int的内容
5、如果没有抛出异常,则break该循环
*/
Scanner scanner = new Scanner(System.in);
int num = 0;
String inputStr = "";
while (true) {
System.out.println("输入整数");
inputStr = scanner.next();
try {
num = Integer.parseInt(inputStr);//这里可能抛出异常
break;
} catch (NumberFormatException e) {
System.out.println("你输入的不是整数");
}
}
System.out.println("输入的是"+num);
}
}
5、throws
抛出的是运行异常,不用处理,编译异常必须处理
6、自定义异常
注:1、一般情况下,我们自定义异常时继承RuntimeException
2、即把自定义异常做成 运行时异常 ,好处是我们可以使用默认的处理机制
7、throw 和 throws 的区别
练习: