**編譯過程中,系統報錯,強制處理(try或拋(throw))。
概論:
程式在執行過後,由呼叫者或者呼叫者上級報出的錯誤資訊、錯誤位置提示。
注意:在丟擲執行時異常時,方法宣告上可以不用throws標識(與編譯異常進行區分)
在編譯**時,可以對可能出現執行時異常的**不進行處理,但在執行時,程式將到出現異常處,停止執行。
方法中丟擲執行時異常,方便記錄錯誤,修改對應**,確保程式執行下去
1.父類的方法丟擲異常,子類的重寫方法可以丟擲異常,也可不丟擲異常。
2.父類的方法沒有丟擲異常,子類的重寫方法一定不能丟擲異常。
3.子類重寫方法中呼叫了乙個異常的方法,只能選用try...catch處理,不能丟擲
需求:從鍵盤錄入兩個整數,實現兩數相加、兩數相除。
/*
* 封裝乙個有兩個數的物件類
* 要求:類中有兩個int數字 作為成員變數
*/public
class
mynum
public
mynum(int num1, int num2)
public
intgetnum1()
public
void
setnum1(int num1)
public
intgetnum2()
public
void
setnum2(int num2)
@override
public string tostring()
}
/*
* 獲取數字的工具類
* 要求:從鍵盤輸入 輸入的是字串要處理異常重新輸入
*/public
class inttools
public
static
intgetintnum() catch
}}
/*
* 封裝自定義異常類
* 要求:類名表示除法除數不能為0
*/public
class
divnotzeroexception
extends
exception
public
divnotzeroexception(string message)
}
/*
* 封裝運算類
*/public
class operact
/** 獲取 要做的運算法則 加法或者除法
* 輸入數字1是加法 2是除法(輸入錯誤 要重新輸入)
*/public string getchoosemethod() else
if (num == 2) else }/*
* 加法方法
*/public
intsum(mynum mynum)
/** 除法方法(要求捕獲異常 並拋出自定義異常)
*/public
intdiv(mynum mynum) throws divnotzeroexception catch (arithmeticexception e)
}/*
* 根據運算法則 執行運算 並返回運算結果
* 除數如果是0 要重新輸入數字
*/public
intgetresultbyoperactandmynum(string operact, mynum mynum)
try catch (divnotzeroexception e)
}}
/*
* 測試類
*/public
class test
}
可以操作檔案,可以操作資料夾,可以操作檔案路徑
// file的靜態成員變數
public
static
void
fun()
// 構造方法
public
static
void
fun()
// 建立檔案方法
public
static
void
fun() throws ioexception
// 刪除
public
static
void
fun()
// 判斷
public
static
void
fun()
// 獲取路徑
public static void fun()
system.out
.println("-----------------------------------");
file listfiles = file.listfiles();
for (file f : listfiles)
}
建構函式中丟擲的異常
建構函式中丟擲的異常 1 標準c 中定義建構函式是乙個物件構建自己,分配所需資源的地方,一旦建構函式執行完畢,則表明這個物件已經誕生了,有自己的行為和內部的執行狀態,之後還有物件的消亡過程 析構函式的執行 可誰能保證物件的構造過程一定能成功呢?說不定系統當前的某個資源不夠,導致物件不能完全構建好自己...
建構函式中丟擲的異常
標準c 中定義建構函式是乙個物件構建自己,分配所需資源的地方,一旦建構函式執行完畢,則表明這個物件已經誕生了,有自己的行為和內部的執行狀態,之後還有物件的消亡過程 析構函式的執行 可誰能保證物件的構造過程一定能成功呢?說不定系統當前的某個資源不夠,導致物件不能完全構建好自己。物件總是由不斷的繼承或不...
建構函式中丟擲的異常
建構函式中丟擲的異常 1 標準c 中定義建構函式是乙個物件構建自己,分配所需資源的地方,一旦建構函式執行完畢,則表明這個物件已經誕生了,有自己的行為和內部的執行狀態,之後還有物件的消亡過程 析構函式的執行 可誰能保證物件的構造過程一定能成功呢?說不定系統當前的某個資源不夠,導致物件不能完全構建好自己...