Java程序设计-试验5(学生版)

上传人:沈*** 文档编号:108031084 上传时间:2022-06-15 格式:DOC 页数:8 大小:145.50KB
收藏 版权申诉 举报 下载
Java程序设计-试验5(学生版)_第1页
第1页 / 共8页
Java程序设计-试验5(学生版)_第2页
第2页 / 共8页
Java程序设计-试验5(学生版)_第3页
第3页 / 共8页
资源描述:

《Java程序设计-试验5(学生版)》由会员分享,可在线阅读,更多相关《Java程序设计-试验5(学生版)(8页珍藏版)》请在装配图网上搜索。

1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateJava程序设计-试验5(学生版)华北电力大学华北电力大学实 验 报 告| 实验名称 异常的抛出、捕获和处理 课程名称 Java程序设计 | 专业班级: 学生姓名: 学 号: 成 绩:指导教师:张学斌 实验日期: -一、实验目的和要求1了解程序运行过程中出现的各种错误,针对不同的错误,采取不同的手段排除错误2 理解异常处理机制的运行方式3 掌握Java异常处理的基本方

2、法二、实验环境Windows2000/Windows XP,JDK 1.21.6 三、实验内容和步骤 实验1 内部购物券1.实验要求 手机专卖店为了促销自己的产品,决定发行内部购物券,但其他商场不能发行该购物券。编写一个MobileShop类(模拟手机专卖店),该类中有一个名字为InnerPurchaseMoney的内部类(模拟内部购物券)。2.程序模板 NewYear.javaclass MobileShop 【代码1】/用内部类InnerPurchaseMoney声明对象purchaseMoney1 【代码2】 /用内部类InnerPurchaseMoney声明对象purchaseMone

3、y1 private int mobileAmount; /手机的数量 MobileShop() 【代码3】 /创建价值为20000的purchaseMoney1 【代码4】 /创建价值为10000的purchaseMoney2 void setMobileAmount(int m) mobileAmount = m; int getMobileAmount() return mobileAmount; class InnerPurchaseMoney int moneyValue; InnerPurchaseMoney(int m) moneyValue = m; void buyMobil

4、e() if(moneyValue=20000) mobileAmount = mobileAmount-6; System.out.println(用价值+moneyValue+的内部购物卷买了6部手机); else if(moneyValue=10000) mobileAmount = mobileAmount-3; System.out.println(用价值+moneyValue+的内部购物卷买了3部手机); public class NewYear public static void main(String args) MobileShop shop = new MobileSho

5、p(); shop.setMobileAmount(30); System.out.println(手机专卖店目前有+shop.getMobileAmount()+部手机); shop.purchaseMoney1.buyMobile(); shop.purchaseMoney2.buyMobile(); System.out.println(手机专卖店目前有+shop.getMobileAmount()+部手机); 实验2 检查危险品1.实验要求: 车站检查危险品的设备,如果发现危险品会发出警告。编程模拟设备发现危险品。 编写一个Exception的子类DangerException,该子类

6、可以创建异常对象,该异常对象调用toShow()方法输出“属于危险品”。 编写一个Machine类,该类的方法checkBag(Goods goods)当发现参数goods是危险品时(goods的isDanger属性是true)将抛出DangerException异常。 程序在主类main()方法中的try-catch语句的try部分让Machine类的实例调用checkBag(Goods goods)方法,如果发现危险品就在try-catch语句的catch部分处理危险品。2.程序模板 Check.javapublic class Check public static void main(

7、String args) Machine machine = new Machine(); String name =苹果,炸药,西服,硫酸,手表,硫磺; Goods goods = new Goodsname.length; /检查6件货物 for(int i= 0;iname.length;i+) goodsi = new Goods(); if(i%2=0) goodsi.setIsDanger(false); goodsi.setName(namei); else goodsi.setIsDanger(true); goodsi.setName(namei); for(int i= 0

8、;igoods.length;i+) try machine.checkBag(goodsi); System.out.println(goodsi.getName()+检查通过); catch(DangerException e) 【代码2】 /e调用toShow()方法 System.out.println(goodsi.getName()+被禁止!); DangerException.javapublic class DangerException extends Exception String message; public DangerException() message = 危

9、险品!; public void toShow() System.out.print(message+ ); Goods.java 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; Machine.jav

10、apublic class Machine public void checkBag(Goods goods) throws DangerException if(goods.isDanger() DangerException danger=new DangerException(); 【代码1】 /抛出danger else System.out.print(goods.getName()+不是危险品! ); 实验3 自定义异常类1. 实验要求声明两个Exception的异常子类:NoLowerLetter类和NoDigit类。再声明一个people类,该类中的void printLett

11、er(char c )方法抛出NoLowerLetter异常类对象,void printDigit(char c ) 方法抛出NoDigit异常类对象。2. 实验模板ExceptionExample.java【代码1】 / 类声明,声明一个Exception的子类NoLowerLetter public void print() System.out.printf(%c,#); 【代码2】 / 类声明,声明一个Exception的子类NoDigit public void print() System.out.printf(%c,*); class People void printLette

12、r(char c) throws NoLowerLetter if(cz) NoLowerLetter noLowerLetter=【代码3】 / 创建NoLowerLetter类型对象 【代码4】 / 抛出noLowerLetter else System.out.print(c); void printDigit(char c) throws NoDigit if(c9) NoDigit noDigit=【代码5】 / 创建NoDigit()类型对象 【代码6】 / 抛出noDigit else System.out.print(c); public class ExceptionExample public static void main (String args ) People people=new People( ); for(int i=0;i128;i+) try people.printLetter(char)i); catch(NoLowerLetter e) e.print(); for(int i=0;i128;i+) try people.printDigit(char)i); catch(NoDigit e) e.print( );

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!