IE盒子

搜索
查看: 168|回复: 1

【博学谷学习记录】 超强总结,用心分享|Java中异常处理 ...

[复制链接]

1

主题

6

帖子

11

积分

新手上路

Rank: 1

积分
11
发表于 2023-1-15 20:52:04 | 显示全部楼层 |阅读模式
Java中的异常就是程序出现了不正常的情况,如果这种异常没有得到及时的 处理,那么程序在执行过程中可能出现非正常的中止,导致意想不到的结果。
Java中的异常都是继承Throwable的,它是所有异常的父类。而在Java中最终的两个就是运行时异常和非运行时异常,这也是后面编程时经常遇到的。



在Java异常需通过try ... catch代码块进行捕获。
public class ExceptionDemo01 {
    public static void main(String[] args) {
        System.out.println("开始");
        method();
        System.out.println("结束");
    }

    public static void method() {
        try {
            int[] arr = {1, 2, 3};
            System.out.println(arr[3]);
            System.out.println("这里能够访问到吗");
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println("你访问的数组索引不存在,请回去修改为正确的索引");
        }
    }
}

  • 如果 try 中没有遇到问题,怎么执行?
    会把try中所有的代码全部执行完毕,不会执行catch里面的代码
  • 如果 try 中遇到了问题,那么 try 下面的代码还会执行吗?
    那么直接跳转到对应的catch语句中,try下面的代码就不会再执行了 当catch里面的语句全部执行完毕,表示整个体系全部执行完全,继续执行下面的代码
  • 如果出现的问题没有被捕获,那么程序如何运行?
    那么try...catch就相当于没有写.那么也就是自己没有处理. 默认交给虚拟机处理.
  • 同时有可能出现多个异常怎么处理?
    出现多个异常,那么就写多个catch就可以了. 注意点:如果多个异常之间存在子父类关系.那么父类一定要写在下

当我们遇到异常时,也可以把异常给抛出,给Java虚拟机去帮我们执行
其格式为throw new 异常();
public class ExceptionDemo {
    public static void main(String[] args) throws ParseException{
        System.out.println("开始");
public static void method() throws ArrayIndexOutOfBoundsException {
        int[] arr = {1, 2, 3};
        System.out.println(arr[3]);
    }
}总结:Java的异常处理并没有死规矩。何时用什么样的异常,是一个需要大量的实际项目积累、试错才能有把握做好的事情。
回复

使用道具 举报

4

主题

11

帖子

23

积分

新手上路

Rank: 1

积分
23
发表于 2023-1-15 20:52:20 | 显示全部楼层
[赞同]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表