c#中自定義異常類
建立自定義異常類應嚴格遵循幾個原則
1. 宣告可序列化(用於進行系列化,當然如果你不需要序列化。那麼可以不宣告為可序列化的)
2. 新增乙個預設的建構函式
3. 新增包含message的建構函式
4. 新增乙個包含message,及內部異常型別引數的建構函式
5. 新增乙個序列化資訊相關引數的建構函式.
public payoverflowexception()
public payoverflowexception(string message)
: base(message)
public payoverflowexception(string message, exception inner)
: base(message, inner)
//public payoverflowexception(system.runtime.serialization.serializationinfo info,
// system.runtime.serialization.streamingcontext context)
// : base(info, context)
}internal class employee
public string name
///
/// current pay
///
public int currpay
public employee()
public employee(int id, string name, int currpay)
///
/// 定義乙個givebunus的虛方法以供不同的派生類進行過載
///
/// 獎金額度
public virtual void givebunus(int amount)}}
class program
catch (payoverflowexception ex)
\n發生於類的方法", ex.message,
ex.targetsite.declaringtype, ex.targetsite.name);
trycatch (exception ex1)}}
}}值得注意的是:在例項化的時候呼叫的是payoverflowexception(string message, exception inner)建構函式,
如果本程式如果有其他程式在呼叫的時候, 可以通過.innerexcetpion的message屬性進行檢視內部異常。
**:
自定義異常類
自定義並捕獲 一 第一種定義方式,繼承exception類 public class myfirstexception extends exception public myfirstexception string msg public myfirstexception string msg,th...
自定義異常類
除了程式裡已經定義好的標準異常類以外,還可以自定義自己的異常類,但通常也和其他標準異常類一樣派生於exception類例如對於乙個 類,如果規定當且僅當任意兩邊長度之和大於第三邊,才能試圖建立乙個三角形或者改變乙個邊長時也不要改變此性質。如果改變了丟擲乙個異常 同時每條邊不能是負數,否則也丟擲異常。...
自定義異常類
當我們在輸入成績,輸入工資,取款的時候,往往都有乙個範圍,而這個範圍不是jvm能夠識別的,因此在輸入的時候就容易出錯,因此在這些時候jdk中的異常無法滿足我們的需求,我們只能自己定義異常類。可以通過繼承exception來派生自己的子異常類。而exception中常用的構造方法 exception ...