Bootstrap

Java 认识异常

1. 异常的背景

初识异常

算数异常

数组下标越界异常

空指针异常

防御式编程

异常的好处

2. 异常的基本用法

捕获异常

异常处理流程

抛出异常

异常说明

3. Java 异常体系

4. 自定义异常类


1. 异常的背景

=========

初识异常


在之前的学习中,我们其实已经接触到了Java当中的“异常”了。

算数异常


System.out.println(10 / 0);

// 执行结果

// Exception in thread "main" java.lang.ArithmeticException: / by zero

数组下标越界异常


int[] arr = {1, 2, 3};

System.out.println(arr[100]);

// 执行结果

// Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 100

空指针异常


public class Test {

    public int num = 10;

    public static void main(String[] args) {

        Test t = null;

        System.out.println(t.num);

    }

}

// 执行结果

// Exception in thread "main" java.lang.NullPointerException

所谓异常指的就是程序在 运行时 出现错误时通知调用者的一种机制.

关键字 “运行时”

有些错误是这样的, 例如将 System.out.println 拼写错了, 写成了 system.out.pr

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;