Java - 异常处理 - 基本了解与使用

目录

  • 异常概念(Exception)
  • 异常体系图(!!)
  • 常见的异常
  • 异常处理概念
  • 异常处理分类
  • 自定义异常
  • throw和throws的对比

异常处理引出

package com.tao.exception_;

/**
 * Create By 刘鸿涛
 * 2021/12/31 13:21
 */
public class Exception01 {
    public static void main(String[] args) {
        int num1 = 10;
        int num2 = 0;
        //当执行到 num1 /num2 因为 num2 = 0,程序就会出现(抛出)异常 ArithmeticException
        //当抛出异常后,程序就退出了,崩溃了,下面的代码就不再运行
        //思考:这样不好,不应该出现了一个不知名的问题,就导致整个系统崩溃
        //java设计者,提供了一个叫 异常处理机制来解决该问题

//        int res = num1 / num2;
        //如果程序员认为,这一段代码可能出现异常/问题,可以使用try-catch异常处理机制来解决
        //从而保证程序的健壮性
        //将该代码块 -> 选中 ->快捷键 -> ctrl + alt + t - >选中 try-catch
        //如果进行异常处理,那么即使出现了异常,程序可以继续执行
        try {
            int res = num1 / num2;
        } catch (Exception e) {
//            e.printStackTrace();    //报错信息,可更改为以下内容
            System.out.println("出现异常的原因 : " + e.getMessage());     //这样会好看一点
        }

        System.out.println("程序继续运行...");
    }

}

出现异常的原因 :by zero

程序继续运行

异常基本概念

  • java语言中,将程序执行中发生的不正常情况称为“异常”,(开发过程中的语法错误和逻辑错误不是异常)
  • 执行过程中所发生的异常事件可分为两类
  1. Error(错误):Java虚拟机无法解决的严重问题。如:JVM系统内部错误、资源耗尽等严重情况。比如:*Error【栈溢出】和OOM(out of memeory),Error是严重错误,程序会崩溃。。
  2. Excepton:其他因编程错误或偶然的外在因素导致的一般性问题,可以使用针对性的代码进行处理。例如空指针访问,试图读取不存在的文件,网络连接中断等等,Excepiton分为两大类:运行时异常【】和编译时异常【】

Java - 异常处理 - 基本了解与使用

异常体系图小结
  1. 异常分为两大类,运行时异常和编译时异常

  2. 运行时异常,编译器不要求强制处理的异常。一般是指编程时的逻辑错误,是程序员应该避免其出现的异常。java.lang.RuntimeException类即它的子类都是运行时异常

  3. 对于运行时异常,可以不做处理,因为这类异常很普遍,若全处理可能会对程序的可读性和运行效率产生影响

  4. 编译时异常,是编译器要求必须处置的异常

上一篇:shell 判断表达式与运算符


下一篇:函数