Java-自定义异常类-货物检测

/*
1.编写一个货物Goods类
有一个布尔型属性 isDanger有一个字符串型属性 name分别对这两个属性设置set get方法
2、编写一个Exception的子类DangerException。有一个toShow()方法输出“属于危险品”,无需返回。
3、编写一个Machine类,该类的方法checkBag(Goodsgoods)
当发现goods是危险品时(goods的isDanger属性是true)将抛出DangerExcetption异常,否则输出“不是危险品”。
4、程序在主类的main()方法中的try-catch语句的try部分让Machine类的实例调用checkBag(Goodsgoods)方法,
如果发现危险品就在try-catch语句的catch部分处理危险品。
实验源代码:
public class Test {
public static void main(String[] args) {
Machine machine = new Machine();
String[] array = { “枪械”, “炸药”, “汽油”, “苹果”, “电脑”, “西瓜”};
Goods[] goods = new Goods[array.length];
for (int i = 0; i < goods.length; i++) {
goods[i] = new Goods();
if (i ❤️) {
goods[i].setDanger(true);
goods[i].setName(array[i]);
} else {
goods[i].setDanger(false);
goods[i].setName(array[i]);
}
}
for (int i = 0; i < goods.length; i++) {
try {
machine.checkBag(goods[i]);
System.out.println(goods[i].getName() + “不属于危险品”+“传送机正常工作”);
} catch (DangerException D) {
D.toShow();
System.out.println(goods[i].getName() +“属于危险品” +“传送机将会报警!”);

        }
    }

}

}

class Goods {
boolean isDanger;
String name;

public boolean isDanger() {
    return isDanger;
}

public void setDanger(boolean danger) {
    isDanger = danger;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

}

class DangerException extends Exception {
public void toShow() {
System.out.println(“属于危险品”);

}

}

class Machine {
public void checkBag(Goods goods) throws DangerException {
if (goods.isDanger) {
// DangerException dangerException = new DangerException();//可以建立对象,也可以直接丢出
throw new DangerException();
} else {
System.out.println(“不属于危险品”);
}
}
}
代码仅供参考,我是小白 欢迎各位大神的指正和批评。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值