【Java SE】带你识别什么叫做异常!!!

在这里插入图片描述
🌹🌹🌹个人主页🌹🌹🌹
【🌹🌹🌹Java SE 专栏🌹🌹🌹】
🌹🌹🌹上一篇文章:【Java SE】带你在String类世界中遨游!!!🌹🌹🌹

1. 异常的概念与体系结构

1.1 异常的概念

在Java中,将程序执行过程中发生的不正常行为称为异常。如之前写代码时经常遇到的:
1. 算术异常

public static void main1(String[] args) {
   
        System.out.println(10/0);//算术异常
        //Exception in thread "main" java.lang.ArithmeticException: / by zeroat Exception.main(Exception.java:10)
    }

2. 数组越界异常

public static void main2(String[] args) {
   
        int[] array = {
   1,2,3};
        for(int i=0;i<=3;i++) {
   
            System.out.println(array[i]);//数组越界
            //Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3
        }
    }

3. 空指针异常

   public static void main(String[] args) {
   
      int[] array = null;
        System.out.println(array.length);//空指针异常
        //Exception in thread "main" java.lang.NullPointerException
    }

从上述过程中可以看到,java中不同类型的异常,都有与其对应的类来进行描述。

1.2 异常的体系结构

异常种类繁多,为了对不同异常或者错误进行很好的分类管理,Java内部维护了一个异常的体系结构:
在这里插入图片描述
从上图中可以看到:

  1. Throwable:是异常体系的顶层类,其派生出两个重要的子类, Error 和 Exception
  2. Error:指的是Java虚拟机无法解决的严重问题,比如:JVM的内部错误、资源耗尽等,典型代表:StackOverflowError和OutOfMemoryError,一旦发生回力乏术。
  3. Exception:异常产生后程序员可以通过代码进行处理,使程序继续执行。比如:感冒、发烧。我们平时所说的异常就是Exception。

1.3 异常的分类

异常可能在编译时发生,也可能在程序运行时发生,根据发生的时机不同,可以将异常分为:
1. 编译时异常
在程序编译期间发生的异常,称为编译时异常,也称为受检查异常(Checked Exception)

public class Person {
   
private 
  • 133
    点赞
  • 114
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 110
    评论
评论 110
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

《冰美式与三明治》

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值