车站检查危险品的设备,如果发现危险品会发出警告。编程模拟设备发现危险品:
编写能够满足如下条件的程序:

  1. 编写一个Exception的子类DangerException,该子类可以创建异常对象,该异常对象调用showMessage()方法输出“属于危险品”。
  2. 编写一个Goods类,其中包括行李名称和是否为危险品的属性及对应的设置和获取方法。
  3. 编写一个Machine类,其中的checkGoods方法当发现行李为危险品时将抛出DangerException异常。
  4. 在主类的main()方法中定义n件行李,随机产生其是否为危险品的属性,并使用try-catch语句让Machine类的实例调用checkGoods方法进行异常处理。

简述

总共有四个类,分别是

  1. 异常类DangerException extends Exception
  2. 设备Goods
  3. 机器Machine
  4. 主类Main

DangerException

//定义异常类DangerException
public class DangerException extends Exception{String message;DangerException(String n){message=n+"属于危险品";//在Machine类中进行检测时会传回被检测设备的good.name,和字符串"属于危险品"共同构成message}  String showMessage() {return message;//在main()中调用并输出showmessage(),最终输出的结果应该是“设备名称属于危险品”。}}

Goods

//定义设备类Goods
public class Goods {String name;//设备名
boolean isDanger;//设备危险值,“true”代表设备是危险品
boolean IsDanger()
{return isDanger;
}
void SetDanger(boolean TorF)
{isDanger=TorF;//用传入的危险值来设置设备
}
String GetName()
{return name;
}
void SetName(String s)
{name=s;
}
}

Machine

//定义机器类Machine
public class Machine {void check(Goods good) throws DangerException
{if (good.isDanger==true)//进行判断,若设备名是约定的危险设备,则将危险值设为“true”{throw new DangerException(good.name);//抛出异常,在main()进行try-catch处理}
}
}

Main

*事先约定进行检测的设备有哪些,并且约定哪种设备是危险品。本题中共有“手机”,“电脑”,“耳机”,“刀”,“炸药”五种设备,其中“刀”和“炸药”属于危险品。

//定义主类Main
public class Main {public static void main(String[] args) {// TODO Auto-generated method stub
Machine machine=new Machine();
String [] str= {"手机","电脑","耳机","刀","炸药"};
Goods good=new Goods();
for(int i=0;i<str.length;i++)
{good.SetName(str[i]);//设定设备名,用于进行判断以及输出结果if (good.GetName()=="刀"||good.GetName()=="炸药")//判断设备是否是“刀”或者“炸药”,如果是,则属于危险品good.SetDanger(true);else good.SetDanger(false);try {machine.check(good);}catch(DangerException e){System.out.println(e.showMessage());}
}
}
}

输出结果

JAVA异常实验:车站检查危险品的设备,如果发现危险品会发出警告。编程模拟设备发现危险品相关推荐

  1. JAVA 车站检查危险品的设备,如果发现危险品会发出警告。编程模拟设备发现危险品。

    车站检查危险品的设备,如果发现危险品会发出警告.编程模拟设备发现危险品. 编写一个Exception的子类DangerException,该子类可以创建异常对象,该异常对象调用toShow()方法输出 ...

  2. Java自学教程!java异常实验总结

    如何保证缓存和数据库一致性 说了这么多缓存的必要性,那么使用缓存是不是就是一个很简单的事情了呢,我之前也一直是这么觉得的,直到遇到了需要缓存与数据库保持强一致的场景,才知道让数据库数据和缓存数据保持一 ...

  3. 车站检查危险品 JAVA,第八周Java实验报告六

    Java实验报告 实验四类的继承 一.实验目的 (1)       理解异常的基本概念: (2)       掌握异常处理方法及熟悉常见异常的捕获方法. 二.实验要求 (1)       练习捕获异常 ...

  4. 车站检查危险产品Java_2019JAVA第六次实验报告

    #Java实验报告 班级 计科二班 学号 20188442 姓名 吴怡君 完成时间 2019.10.18 评分等级 ##实验四 类的继承 ###实验目的 理解异常的基本概念: 掌握异常处理方法及熟悉常 ...

  5. 运行时异常和受检查异常的区别

    java程序设计语言提供了三种可抛出结构:受检查时异常(checked exception),运行时(run-time exception)和错误 (error) java异常:受检查时异常和运行时异 ...

  6. java异常——异常分类+声明已检查异常+如何抛出异常+自定义异常类

    [0]README 0.1) 本文描述+源代码均 转自 core java volume 1, 旨在理解 java异常--异常分类+声明已检查异常+如何抛出异常+自定义异常类 的相关知识: 0.2)异 ...

  7. java的未检查异常有哪些_Java:检查异常与未检查异常

    一.异常的介绍 Throwable 是 Java 中所有错误和异常的超类.Java 虚拟机仅抛出属于此类(或其子类之一)的实例对象,或者是 throw 语句也可以抛出该对象.同样,catch 子句中的 ...

  8. java非检查性异常有哪些_Java异常处理-检查性异常、非检查性异常、Error

    一.Java异常处理详解 异常.png 目录: 1.java中异常的分类 1.1 异常(Exception) 1.1.1 运行时异常(RuntimeException) 可以不需要捕获 1.1.2 编 ...

  9. Java检查异常、非检查异常、运行时异常、非运行时异常的区别

    Java检查异常.非检查异常.运行时异常.非运行时异常的区别 参考文章: (1)Java检查异常.非检查异常.运行时异常.非运行时异常的区别 (2)https://www.cnblogs.com/ou ...

最新文章

  1. linux shell pushd popd dirs命令
  2. 致远M1移动协同软件
  3. python zookeeper_ZooKeeper的安装以及客户端Kazoo(Python语言)的安装与使用
  4. boost::fibers::buffered_channel的测试程序
  5. sklearn分类器:朴素贝叶斯
  6. 计算机单招六百分好考吗,单招分数线一般多少 单招考过的几率有多少
  7. MVC HtmlHelper扩展——实现分页功能
  8. 在线XML转HTML工具
  9. 2 str转byte失败_android 4.2的多线程库加载崩溃问题
  10. 5 年迭代 5 次,抖音基于 Flink 的推荐系统演进历程
  11. android 连线题实现 自定义view  画线
  12. python之词频统计
  13. golang 实现 key有序map
  14. typora主题配置:公众号一键排版
  15. Kindle 文档生成工具
  16. 服务器和交换机物理连接_什么是光纤交换机?有什么功能?
  17. 看网页的宽度设置应该基于1024以上了
  18. 域名进行实名认证需要提交什么资料?
  19. 2022年,Lazada开店要交多少钱
  20. 宝山区企业技术中心认定条件及奖励政策解读

热门文章

  1. Android - Navigation
  2. 关于网上下载东西捆绑软件的问题
  3. K近邻(KNN)详解
  4. __declspec(naked)是用来告诉编译器函数代码的汇编语言为自己的所写,不需要编译器添加任何汇编代码
  5. Android 新技术
  6. APP被苹果审核团队拒绝的原因
  7. 高德地图 根据名称搜索坐标,坐标点呈现列表展示
  8. 基于python 的 ansys 二次开发-----借助pyansys安装包。
  9. c刊计算机领域见刊快的期刊,想集合大家的经历,列出一些见刊较快的期刊,以供参考!...
  10. (9)一步一步开发一个简单CAD之镱像和平移