携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第29天,点击查看活动详情
本章概要
本章主要和大家一起学习java异常类的处理机制,深入学习java异常类。
掌握异常处理机制,及背后的逻辑。
1.了解异常体系,学习常见的异常类
2.知道如何处理异常,掌握try-catch 或者 throws的使用和区别
3.能够读懂异常代码,知道何处可能会有异常出现
java异常处理入门
二话不说,先看代码!
//异常处理入门
public class Exception1 {
public static void main(String[] args) {
int m = 10;
int n = 0;
System.out.println(m/n);//分母不能为0 算数异常
System.out.println("程序继续....");//异常导致程序奔溃并未执行该语句
}
}
可以看到当一个代码某个语句出现异常,如果我们不做任何处理,
java程序就会奔溃,导致程序中断,后面的语句无法执行!
那如果我们是一个团队在写一个项目,我们有成千上万行代码,如果应因为某一行语句出现异常,而导致整个项目奔溃,显然不合理!
我们可以采取解决方案将异常处理
捕捉异常
对异常进行捕获,保证程序可以继续运行。
用try-catch语句进行捕捉异常,大致细节我们后面讲到,我们先看下面代码:
//try-catch对异常捕捉
public class Exception1 {
public static void main(String[] args) {
int m = 10;
int n = 0;
try {
System.out.println(m/n);//分母不能为0 算数异常
} catch (Exception e) { //捕捉异常
System.out.println(e.getMessage());//打印异常信息
}
System.out.println("程序继续...."); //处理完异常继续执行该语句
}
}
我们可以看到捕捉处理异常后程序可以正常执行!
我们再来学习一下try-catch语句在IDEA下的快捷键吧!
1.首先我们选中将会报异常的语句
2.快捷键Ctrl+Alt+T
3.选中要进行的操作
异常介绍
异常分类
java异常分为两大类:
Error(错误)java虚拟机无法解决的重大问题,JVM系统内部错误,资源耗尽等严重情况。如:栈溢出StackOverflowError,内存不足out of memory(OOM)。Error是严重错误,会导致程序奔溃!就好比人得了绝症,没得救!Exception由编程错误或其他外界因素导致的一般性问题,可以通过针对性的代码来处理。例如:空指针访问,文件是否存在,数据库连接等等。Exception又分为两种: 1.受查(编译)异常:在编译器期间,编译器便能够查出的错误! 2.非受查(运行)异常RuntimeException:在运行期间才会报错!