標題:
[作業] 例外處理 (六) - 自訂例外類別2
[打印本頁]
作者:
葉桔良
時間:
2021-11-6 02:29
標題:
[作業] 例外處理 (六) - 自訂例外類別2
本帖最後由 葉桔良 於 2022-9-23 21:12 編輯
試自訂一名為 BodyException 的例外類別, 使在 BMI 值的計算程式中, 當使用者輸入的身高或體重數值不合常理時, 自行拋出該類別的例外物件, 並且使用 try...catch 語法, 如果 catch 到該類別的例外物件, 則回應 "請輸入合理範圍內的身高或體重!". 當然, 其他的例外物件也要能 catch 到, 譬如如果 catch 到 InputMismatchException 則回應 "請輸入數字!"
import java.util.*;
public class Ch51
{
public static void main(String args[])
{
for(;;)
{
try
{
double h,w,bmi;
Scanner s=new Scanner(System.in);
System.out.print("請輸入你的身高(公分): ");
h=s.nextDouble();
if(h<50 || h>250)
throw new MyException("請輸入合理的身高!");
h/=100; //h=h/100;
System.out.print("請輸入你的體重(公斤): ");
w=s.nextDouble();
if(w<5 || w>250)
throw new MyException("請輸入合理的體重!");
bmi=w/(h*h);
System.out.println("你的BMI值為: "+bmi);
}catch(InputMismatchException e)
{
System.out.println("請輸入數字!");
}catch(MyException e)
{
System.out.println(e.getMessage());
}
System.out.println();
}
}
}
class MyException extends Exception //繼承
{
MyException(String str) //建構子
{
super(str);
}
}
複製代碼
作者:
王儀華
時間:
2022-5-13 20:31
此帖僅作者可見
作者:
李泳霖
時間:
2022-6-29 17:13
此帖僅作者可見
作者:
朱嚴寘
時間:
2022-7-6 21:19
此帖僅作者可見
作者:
若晴
時間:
2022-9-23 21:17
此帖僅作者可見
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://istak.org.tw/seed/)
Powered by Discuz! 7.2