Java 编程模拟危险品检测设备:异常处理与商品检查

本文将通过 Java 编程模拟一个危险品检测设备,该设备可以检查商品是否属于危险品,并通过异常处理机制来处理检测结果。

编程要求:

  1. 通过继承 Exception 类,编写一个 DangerException 类,该异常类在构造方法中使用 super 调用父类构造方法,并使用字符串 '属于危险品!' 对父类变量 message 进行初始化。
  2. 编写商品类 Goods,该类包含商品名称 (name) 和是否为危险品 (isDanger) 属性,并提供相应的 getset 方法。
  3. 编写一个 Machine 类,该类包含 checkBag(Goods goods) 方法,当发现参数 goods 是危险品时(即 goodsisDanger 属性为 true),该方法抛出 DangerException 异常的对象。
  4. 编写主类 Check,在其 main 方法中创建商品对象,并使用 Machine 对象检查商品。

代码实现:

import java.util.Arrays;

class DangerException extends Exception {
    public DangerException() {
        super('属于危险品!');
    }
}

class Goods {
    private String name;
    private boolean isDanger;

    public Goods(String name, boolean isDanger) {
        this.name = name;
        this.isDanger = isDanger;
    }

    public String getName() {
        return name;
    }

    public boolean isDanger() {
        return isDanger;
    }
}

class Machine {
    public void checkBag(Goods goods) throws DangerException {
        if (goods.isDanger()) {
            throw new DangerException();
        }
    }
}

public class Check {
    public static void main(String args[]) {
        String[] name = {'苹果', '炸药', '西服', '硫酸', '手表', '硫磺'}; // 商品名称
        Goods[] goods = new Goods[name.length]; // 检查6件物品

        // 创建商品对象
        for (int i = 0; i < name.length; i++) {
            boolean isDanger = Arrays.asList('炸药', '硫酸', '硫磺').contains(name[i]);
            goods[i] = new Goods(name[i], isDanger);
        }

        // 检查商品
        Machine machine = new Machine();
        for (Goods item : goods) {
            try {
                machine.checkBag(item);
                System.out.println(item.getName() + ' 不是危险品');
            } catch (DangerException e) {
                System.out.println(item.getName() + ' 是危险品');
            }
        }
    }
}

代码说明:

  1. DangerException 类继承自 Exception 类,并使用构造方法将 '属于危险品!' 传递给父类构造方法。
  2. Goods 类包含商品名称 (name) 和是否为危险品 (isDanger) 属性,并提供了相应的 getset 方法。
  3. Machine 类中的 checkBag 方法检查商品是否为危险品,如果是则抛出 DangerException 异常。
  4. Check 类中的 main 方法创建商品对象,并使用 Machine 对象检查商品,使用 try-catch 块捕获 DangerException 异常,并输出检测结果。

运行结果:

苹果 不是危险品
炸药 是危险品
西服 不是危险品
硫酸 是危险品
手表 不是危险品
硫磺 是危险品

总结:

本文通过 Java 编程模拟了一个危险品检测设备,并使用自定义异常类 DangerException 来处理检测结果。该程序展示了 Java 异常处理机制的使用,以及自定义类和方法的使用。开发者可以通过该程序学习 Java 的异常处理机制,并将其应用到实际的软件开发中。

Java 编程模拟危险品检测设备:异常处理与商品检查

原文地址: https://www.cveoy.top/t/topic/pjWc 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录