异常处理 ?处理(try-catch) :甩锅(throws)_ java异常(Exception)处理(1)

93 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 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 :在运行期间才会报错!