标签:捕获异常 局部变量 mic 支持 账户 因此 元素 创建 警告
实验六 Java异常
车站检查危险品的设备,如果发现危险品会发出警告。编程模拟设备发现危险品。
技术方案:
编写一个Exgeption的子类DangerException,该子类可以创建异常对象,该异常对象调用toShow()方法输出“危险物品”。编写一个Machine类,该类的方法checkBag(Goods goods)当发现参数goods是危险品时(goods的isDanger属性是true)将抛出DangerException异常。
程序在主类的main()方法中的try-catch语句的try部分让Machine类的实例调用checkBag(Goods goods)的方法,如果发现危险品就在try-catch语句的catch部分处理危险品。
实验代码:
package 实验6; public class Test{ public static void main(String args[]){ System.out.println("程序运行开始"); try{ String str1=args[0]; String str2=args[1]; } catch(ArrayIndexOutOfBoundsException e){ System.out.println("数据越界异常"+e); } System.out.println("程序运行结束"); } }
实验结果:
实验代码:
/** * */ package 实验6; public class DangerException extends Exception { public class Machine { } String message; public DangerException() { message="该物品是危险品"; } public void toShow() { System.out.println(message+" "); } }
package 实验6; public class Machine { Goods goods = new Goods(); public void checkBag(Goods goods)throws DangerException{ if(goods.isDanger()) { DangerException danger = new DangerException(); throw danger; //抛出异常的实例化对象 } else { System.out.println(goods.getName()+"不是危险物品"); } } }
package 实验6; public class Test { public static void main(String args[]) { Machine machine=new Machine(); String name[]= {"易燃化妆品","棉裤","矿泉水","手表","面包","刀"}; Goods[] goods=new Goods[name.length]; for(int i=0;i<name.length;i++) { goods[i]=new Goods(); if(i%2==0) { goods[i].setIsDanger(false); goods[i].setName(name[i]); } else { goods[i].setIsDanger(true); goods[i].setName(name[i]); } } for(int i=0;i<goods.length;i++) { try{ machine.checkBag(goods[i]); System.out.println(goods[i].getName()+"检查通过"); } catch(DangerException e) { e.toShow(); System.out.println(goods[i].getName()+"禁止通过"); } } } }
package 实验6; public class Goods { boolean isDanger; String name; public void setIsDanger(boolean boo) { isDanger=boo; } public boolean isDanger() { return isDanger; } public void setName(String s) { name=s; } public String getName() { return name; } }
实验结果:
实验总结:感觉这次作业难度蛮大的,但是对我们的启发也是蛮大的,之前做的作业都是编写程序计算计算,而这次的作业要求我们写一个检查危险物品的程序,和上次的银行账户一样,我们学的东西开始贴切实际了,但确实难做啊,学的不好,所以代码也比较简陋。以后学的多了再改善吧。
学习总结:
异常:异常时导致程序中断运行的一种指流,如果不对其处理会导致程序运行中断并造成一定的损失。
异常中,Throwable 类是 Java 语言中所有错误或异常的超类。Error和Exception 是 Throwable 的子类,Error用于指示合理的应用程序不应该试图捕获的严重问题。
异常的处理方式:
标签:捕获异常 局部变量 mic 支持 账户 因此 元素 创建 警告
原文地址:https://www.cnblogs.com/Jay-h/p/11700543.html