版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、-. z.華北電力大學(xué)實(shí) 驗(yàn) 報(bào) 告|實(shí)驗(yàn)名稱異常的拋出、捕獲和處理課程名稱Java程序設(shè)計(jì)|專業(yè)班級(jí): 學(xué)生*:學(xué) 號(hào): 成 績(jī):指導(dǎo)教師:*學(xué)斌 實(shí)驗(yàn)日期: -. z.一、實(shí)驗(yàn)?zāi)康暮鸵?了解程序運(yùn)行過(guò)程中出現(xiàn)的各種錯(cuò)誤,針對(duì)不同的錯(cuò)誤,采取不同的手段排除錯(cuò)誤2 理解異常處理機(jī)制的運(yùn)行方式3 掌握J(rèn)ava異常處理的根本方法二、實(shí)驗(yàn)環(huán)境Windows2000/Windows *P,JDK 1.21.6三、實(shí)驗(yàn)內(nèi)容和步驟 實(shí)驗(yàn)1 內(nèi)部購(gòu)物券1.實(shí)驗(yàn)要求手機(jī)專賣(mài)店為了促銷(xiāo)自己的產(chǎn)品,決定發(fā)行內(nèi)部購(gòu)物券,但其他商場(chǎng)不能發(fā)行該購(gòu)物券。編寫(xiě)一個(gè)MobileShop類(lèi)模擬手機(jī)專賣(mài)店,該類(lèi)中有一個(gè)名字為I
2、nnerPurchaseMoney的內(nèi)部類(lèi)模擬內(nèi)部購(gòu)物券。2.程序模板NewYear.javaclass MobileShop 【代碼1】/用內(nèi)部類(lèi)InnerPurchaseMoney聲明對(duì)象purchaseMoney1 【代碼2】 /用內(nèi)部類(lèi)InnerPurchaseMoney聲明對(duì)象purchaseMoney1 private int mobileAmount; /手機(jī)的數(shù)量 MobileShop() 【代碼3】 /創(chuàng)立價(jià)值為20000的purchaseMoney1 【代碼4】 /創(chuàng)立價(jià)值為10000的purchaseMoney2 void setMobileAmount(int m) m
3、obileAmount = m; int getMobileAmount() return mobileAmount; class InnerPurchaseMoney int moneyValue; InnerPurchaseMoney(int m) moneyValue = m; void buyMobile() if(moneyValue=20000) mobileAmount = mobileAmount-6; System.out.println(用價(jià)值+moneyValue+的內(nèi)部購(gòu)物卷買(mǎi)了6部手機(jī)); else if(moneyValue=10000) mobileAmount
4、= mobileAmount-3; System.out.println(用價(jià)值+moneyValue+的內(nèi)部購(gòu)物卷買(mǎi)了3部手機(jī)); public class NewYear public static void main(String args) MobileShop shop = new MobileShop(); shop.setMobileAmount(30); System.out.println(手機(jī)專賣(mài)店目前有+shop.getMobileAmount()+部手機(jī));uyMobile(); shop.purchaseMoney2.buyMobile(); System.out.p
5、rintln(手機(jī)專賣(mài)店目前有+shop.getMobileAmount()+部手機(jī)); 實(shí)驗(yàn)2 檢查危險(xiǎn)品1.實(shí)驗(yàn)要求: 車(chē)站檢查危險(xiǎn)品的設(shè)備,如果發(fā)現(xiàn)危險(xiǎn)品會(huì)發(fā)出警告。編程模擬設(shè)備發(fā)現(xiàn)危險(xiǎn)品。 編寫(xiě)一個(gè)E*ception的子類(lèi)DangerE*ception,該子類(lèi)可以創(chuàng)立異常對(duì)象,該異常對(duì)象調(diào)用toShow()方法輸出“屬于危險(xiǎn)品。 編寫(xiě)一個(gè)Machine類(lèi),該類(lèi)的方法checkBag(Goods goods)當(dāng)發(fā)現(xiàn)參數(shù)goods是危險(xiǎn)品時(shí)goods的isDanger屬性是true將拋出DangerE*ception異常。 程序在主類(lèi)main()方法中的try-catch語(yǔ)句的try局部讓
6、Machine類(lèi)的實(shí)例調(diào)用checkBag(Goods goods)方法,如果發(fā)現(xiàn)危險(xiǎn)品就在try-catch語(yǔ)句的catch局部處理危險(xiǎn)品。2.程序模板 Check.javapublic class Check public static void main(String args) Machine machine = new Machine(); String name =蘋(píng)果,炸藥,西服,硫酸,手表,硫磺; Goods goods = new Goodsname.length; /檢查6件貨物 for(int i= 0;iname.length;i+) goodsi = new Good
7、s(); if(i%2=0) goodsi.setIsDanger(false); goodsi.setName(namei); else goodsi.setIsDanger(true); goodsi.setName(namei); for(int i= 0;igoods.length;i+) try machine.checkBag(goodsi); System.out.println(goodsi.getName()+檢查通過(guò)); catch(DangerE*ception e) 【代碼2】 /e調(diào)用toShow()方法 System.out.println(goodsi.getNa
8、me()+被制止!); DangerE*ception.javapublic class DangerE*ception e*tends E*ception String message; public DangerE*ception() message = 危險(xiǎn)品!; public void toShow() System.out.print(message+ ); Goods.java public class Goods boolean isDanger; String name; public void setIsDanger(boolean boo) isDanger = boo;
9、public boolean isDanger() return isDanger; public void setName(String s) name = s; public String getName() return name; Machine.javapublic class Machine public void checkBag(Goods goods) throws DangerE*ception if(goods.isDanger() DangerE*ception danger=new DangerE*ception(); 【代碼1】 /拋出danger else Sys
10、tem.out.print(goods.getName()+不是危險(xiǎn)品! ); 實(shí)驗(yàn)3 自定義異常類(lèi)實(shí)驗(yàn)要求聲明兩個(gè)E*ception的異常子類(lèi):NoLowerLetter類(lèi)和NoDigit類(lèi)。再聲明一個(gè)people類(lèi),該類(lèi)中的void printLetter(char c )方法拋出NoLowerLetter異常類(lèi)對(duì)象,void printDigit(char c ) 方法拋出NoDigit異常類(lèi)對(duì)象。實(shí)驗(yàn)?zāi)0錏*ceptionE*ample.java【代碼1】 / 類(lèi)聲明,聲明一個(gè)E*ception的子類(lèi)NoLowerLetter public void print() System.ou
11、t.printf(%c,#); 【代碼2】 / 類(lèi)聲明,聲明一個(gè)E*ception的子類(lèi)NoDigit public void print() System.out.printf(%c,*); class People void printLetter(char c) throws NoLowerLetter if(cz) NoLowerLetter noLowerLetter=【代碼3】 / 創(chuàng)立NoLowerLetter類(lèi)型對(duì)象 【代碼4】 / 拋出noLowerLetter else System.out.print(c); void printDigit(char c) throws NoDigit if(c9) NoDigit noDigit=【代碼5】 / 創(chuàng)立NoDigit()類(lèi)型對(duì)象 【代碼6】 / 拋出noDigit else System.out.print(c); public class E*ceptionE*ample public static void main (String args ) People people
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度數(shù)據(jù)中心PPP項(xiàng)目運(yùn)維服務(wù)合同3篇
- 2024食用菌菌種生產(chǎn)技術(shù)改造與升級(jí)合同3篇
- 2025年度水電工程安全防護(hù)與應(yīng)急處理合同樣本4篇
- 2024私家車(chē)短期租賃合同
- 2025年農(nóng)業(yè)科技園區(qū)土地承包種植合同4篇
- 2025年度新能源汽車(chē)充電車(chē)棚建設(shè)及運(yùn)營(yíng)管理合同4篇
- 北京朗視儀器股份有限公司介紹企業(yè)發(fā)展分析報(bào)告
- 2025年度個(gè)人戶外活動(dòng)組織管理合同范本4篇
- 2025年度個(gè)人藝術(shù)品鑒定與評(píng)估合同4篇
- 2025年山東兗礦煤化供銷(xiāo)有限公司招聘筆試參考題庫(kù)含答案解析
- 稱量與天平培訓(xùn)試題及答案
- 超全的超濾與納濾概述、基本理論和應(yīng)用
- 2020年醫(yī)師定期考核試題與答案(公衛(wèi)專業(yè))
- 2022年中國(guó)育齡女性生殖健康研究報(bào)告
- 各種靜脈置管固定方法
- 消防報(bào)審驗(yàn)收程序及表格
- 教育金規(guī)劃ppt課件
- 呼吸機(jī)波形分析及臨床應(yīng)用
- 常用緊固件選用指南
- 私人借款協(xié)議書(shū)新編整理版示范文本
- 自薦書(shū)(彩色封面)
評(píng)論
0/150
提交評(píng)論