一、什么是异常:
1、异常就是在程序的运行过程中所发生的异常事件。
2、Java的异常处理是通过5个关键字来实现的,即try、catch、finally、throw和throws。
3、即使在try语句块、catch语句块中存在return语句,finally语句块中的语句也会执行。
finally语句中语句不执行的唯一情况是:在异常处理代码中执行了System.exit(1)。
4、可以在一个try语句块后面跟多个catch语句块,分别处理不同的异常。但排列顺序必须是从特殊异常到一般异常,
最后一个一般都是Exception类。
5、Java语言中通过关键字throws声明某个方法可能抛出的各种异常以通知调用者。
6、在Java语言中,可以使用throw关键字来自行抛出异常。
7、自定义异常类一般需要继承Exception或者RuntimeException。
二、try{}catch(){}用法
try语句块内是可能会出现异常的语句
catch(){}用来捕获异常,故括号内需要声明一个异常如(Exception e){输出异常/抛出异常}
输出异常信息的方法有:System.err.print(e);System.out.println(e);
三、配合finally{}
try{
...
}catch(Exception e){
...
}finally{
不管有没有异常,都会执行的语句块;除非上方使用了System.exit(1);
}
四、throws声明异常、throw抛异常
throws声明类或方法,多个异常用逗号隔开;一般配合throw使用。
如:public void fun() throws InputMismatchException{
...
throw new InputMismatchException;
}
五、try-with-resources,可以只用try
try(声明资源使用){...}catch(...){...}
如:
try(Scanner sc = new Scaner(System.in)){
...
}