Java 第12章 异常 本章作业

发布时间:2023年12月17日

1 编程 两数相除的异常处理

在这里插入图片描述
各自属于哪些异常:
数据格式不正确 NumberformatException
缺少命令行参数 ArrayIndexOutOfBoundsException
除0异常处理 ArithmeticException

ArrayIndexOutOfBoundsException 为数组下标越界时会抛出的异常,可以在检测到命令行参数个数不等于2时,人为强制抛出该异常(要不然只有在取args[下标]的时候,才能发现出现异常),然后再在catch中进行处理:

 if (!(args.length == 2))
 	throw new ArrayIndexOutOfBoundsException("参数个数不对");

throw和throws的区别:
throws表明本方法不负责处理,去找调用本方法的对象进行处理(踢皮球);
throw用于手动生成异常对象
在这里插入图片描述

* IDE中的命令行参数配置:
在这里插入图片描述
在这里插入图片描述

完整代码:

public class Homework01 {
    public static int cal(int n1, int n2) {
        return n1 / n2;
    }
    public static void main(String[] args) {
        try {
            if (!(args.length == 2))
                throw new ArrayIndexOutOfBoundsException("参数个数不对");
            int n1 = Integer.parseInt(args[0]);
            int n2 = Integer.parseInt(args[1]);
            int res = cal(n1, n2);
            System.out.println("结果=" + res);
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println(e.getMessage());
        } catch (NumberFormatException e) {
            System.out.println("格式不正确,需要输入整数");
        } catch (ArithmeticException e) {
            System.out.println("出现除以0的异常");
        }
    }
}

文章来源:https://blog.csdn.net/Winnie_deer/article/details/135042097
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。