標題:
例外處理 (五) - 自訂例外類別
[打印本頁]
作者:
tonyh
時間:
2017-4-15 09:55
標題:
例外處理 (五) - 自訂例外類別
除了捕捉Java拋出的例外物件,還可以利用關鍵字
throw
自行拋出例外物件。而若拋出的例外物件非系統能自行捕捉到,譬如自訂類別的例外,則需在方法宣告列後面利用關鍵字
throws
註明例外類別名稱,以便在指定的方法中拋出例外。
import java.util.Scanner;
public class Ch51
{
static Scanner s=new Scanner(System.in);
//若拋出的例外物件非系統能自行捕捉到,譬如自訂類別的例外物件,需在此註明
public static void main(String[] args) throws MyException
{
float x,y;
System.out.print("輸入分子: ");
x=s.nextFloat();
System.out.print("輸入分母: ");
y=s.nextFloat();
if(y==0)
throw new MyException("嘿嘿嘿~分母不可為零喔!");
System.out.println(x+"/"+y+"="+(x/y));
}
}
class MyException extends Exception
{
MyException(String str)
{
super(str); //呼叫父類別的建構子
}
}
複製代碼
作者:
林侑成
時間:
2017-4-15 10:31
import java.util.Scanner;
public class Ch51
{
static Scanner s=new Scanner(System.in);
public static void main(String[] args) throws MyException
{
float x,y;
System.out.print("輸入分子: ");
x=s.nextFloat();
System.out.print("輸入分母: ");
y=s.nextFloat();
if(y==0)
throw new MyException("嘿嘿嘿~分母不可為零喔!");
System.out.println(x+"/"+y+"="+(x/y));
}
}
class MyException extends Exception
{
MyException(String str)
{
super(str);
}
}
複製代碼
作者:
黃茂勛
時間:
2017-4-15 10:32
import java.util.Scanner;
public class Ch56
{
static Scanner s=new Scanner(System.in);
public static void main(String args[])throws MyException
{
float x,y;
System.out.print("輸入分子: ");
x=s.nextFloat();
System.out.print("輸入分母: ");
y=s.nextFloat();
if(y==0)
throw new MyException("87 分母不為零~");
System.out.println(x+"/"+y+"="+(x/y));
}
}
class MyException extends Exception
{
MyException(String str)
{
super(str);
}
}
複製代碼
作者:
陸長辰
時間:
2017-4-15 10:47
import java.util.Scanner;
public class Ch50
{
static Scanner s=new Scanner(System.in);
public static void main(String args[])throws MyException
{
float x,y;
System.out.print("輸入分子");
x=s.nextFloat();
System.out.print("輸入分母");
y=s.nextFloat();
if(y==0)
throw new MyException("分母不能是0");
System.out.println(x+"/"+y+"="+(x/y));
}
}
class MyException extends Exception
{
MyException(String str)
{
super(str);
}
}
複製代碼
作者:
陳泓瑜
時間:
2017-4-15 11:01
import java.util.Scanner;
public class Ch44
{
static Scanner s=new Scanner(System.in);
public static void main (String[] args) throws ME
{
float x,y;
System.out.print("ENTER X/-:");
x=s.nextFloat();
System.out.print("ENTER -/Y:");
y=s.nextFloat();
if(y==0)
throw new ME("DIV/0!");
System.out.println(x+"/"+y+"="+(x+y));
}
}
class ME extends Exception
{
ME(String str)
{
super(str);
}
}
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/)
Powered by Discuz! 7.2