车站检查危险品的设备,如果发现危险品会发出警告。编程模拟设备发现危险品。 编写一个 Exception 的子类 DangerException,该子类可以创建异常对象,该异常对象调 用 toShow()方法输出“属于危险品”。 编写一个 Machine 类,该类的方法 checkBag(Goods goods)当发现参数 goods 是危险品时 (goods 的 isDanger 属性是 true)将抛出 DangerException 异常。 程序在主类的 main()方法中的 try-cat
时间: 2024-01-22 08:17:59 浏览: 222
ch语句块中调用 Machine 类的 checkBag()方法,如果抛出 DangerException 异常,则输出异常对象的 toShow()方法返回的字符串。
代码实现如下:
```
// DangerException.java
public class DangerException extends Exception {
public void toShow() {
System.out.println("属于危险品");
}
}
// Goods.java
public class Goods {
private boolean isDanger;
public Goods(boolean isDanger) {
this.isDanger = isDanger;
}
public boolean isDanger() {
return isDanger;
}
}
// Machine.java
public class Machine {
public void checkBag(Goods goods) throws DangerException {
if (goods.isDanger()) {
throw new DangerException();
} else {
System.out.println("未发现危险品");
}
}
}
// Main.java
public class Main {
public static void main(String[] args) {
Machine machine = new Machine();
Goods goods1 = new Goods(false);
Goods goods2 = new Goods(true);
try {
machine.checkBag(goods1);
machine.checkBag(goods2);
} catch (DangerException e) {
e.toShow();
}
}
}
```
当运行上述代码时,会输出以下内容:
```
未发现危险品
属于危险品
```
阅读全文