自定義異常的使用_第1頁
自定義異常的使用_第2頁
自定義異常的使用_第3頁
自定義異常的使用_第4頁
自定義異常的使用_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)1)在定義一個銀行類 Bank 時, 有 deposit、withdraw、showBalance 等方法。若取錢數(shù)大于余額則作為異常處理(InsufficientFundsException)。產(chǎn)生異常的條件是余額少于取額,因此是否拋出異常要判斷條件,要定義好自己的異常類。package ex91;public class Bank public double total=0; Bank(double d) total=d; public void deposit(d

2、ouble d) total+=d; public void withdraw(double d) total-=d; public void showBalance() System.out.println(total); package ex91;public class BankException extends Exception String message; BankException(double d) message=d+非法取款余額; public String getMessage() return message; package ex91;import java.uti

3、l.Scanner;public class BankTest /* * param args */ public static void main(String args) throws BankException / TODO Auto-generated method stubBank bk=new Bank(1236.123);bk.showBalance();Scanner sc = new Scanner(System.in); int i=sc.nextInt();bk.withdraw(i); if(bk.total0) BankException be=new BankExc

4、eption(i);throw(be); else bk.showBalance(); (2)定義 Triangle 類用于表示三角形,其任意兩個邊的和必須大于第三條邊。定義 IllegalTriangleException 用于聲明任何違反以上規(guī)則的輸入。Triangle類的構(gòu)造方法如下:public Triangle(double side1, double side2, double side3) throwsIllegalTriangleException / Implement itpackage ex92;import java.io.IOException;class Illeg

5、alTriangleException extends Exception / private static final long serialVersionUID = 1L; package ex92;import java.io.IOException;public class Test public static void main(String args) throws IOException Triangle t1; try t1 = new Triangle(3, 1, 2); catch (IllegalTriangleException e) e.printStackTrace

6、(); System.out.println(不合法的三角形); return; System.out.println(side1= + t1.side1 + ,side2= + t1.side2 + ,side3= + t1.side3); package ex92;class Triangle double side1; double side2; double side3; public Triangle(double side1, double side2, double side3) throws IllegalTriangleException super(); if (side1

7、 + side2 = side3 | side1 + side3 = side2 | side2 + side3 = side1) throw new IllegalTriangleException(); this.side1 = side1; this.side2 = side2; this.side3 = side3; (3)要求聲明定義 2 個異常類:NoLetterException 類和 NoDigitException類。再定義一個 People 類,該類中的 void printLetter(char c) throws 方法拋出NoLetterException 異常,voi

8、d printDigit(char c)方法拋出 NoDigitException 異常。主類 ExceptionExample 對 2 個方法分別測試。package ex93;public class ExceptionExample public static void main (String args ) People people=new People( ); for(int i=0;i128;i+) try people.printLetter(char)i); /調(diào)用people對象的printLetter方法并處理異常 catch(NoLetterException e) S

9、ystem.out.println(發(fā)生異常:+e.getMessage(); e.print(); for(int i=0;i=a&c=0&c=9) throw new NoDigitException(); else System.out.println(請輸出該字符:+c); (4)CircleArea 類是一個命令行輸入的計算器,用于計算圓的面積,程序從命令行接收半徑。如果命令行輸入的是非數(shù)字,則程序拋出異常,顯示消息通知用戶必須輸入數(shù)字。e 類用于表示三角形,其任意兩個邊的和必須大于第三條邊。定義 IllegalTriangleException 用于聲明任何違反以上規(guī)則的輸入。Tr

10、iangle類的構(gòu)造方法如下:public Triangle(double side1, double side2, double side3) throwsIllegalTriangleException / Implement itpackage ex94;import java.io.BufferedReader;import java.io.InputStreamReader;public class TestCircle public static void main(String args) while(true) System.out.println(Please enter a radius of the circle: );tryBufferedReader br = new BufferedReader(new InputStreamReader(System.in);double radius = Double.valueOf(br.readLine().trim();System.out.println(Your enter the radius is: + radius);double area = Math.PI * r

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論