C#自定义异常
- 继承自System.ApplicationException类,并使用Exception作为自定义异常类名的结尾
- 三个构造函数:一个无参构造函数;一个字符串参数的构造函数;一个字符串参数,一个内部异常作为参数的构造函数
1 public class MyException : ApplicationException 2 { 3 private string error; 4 private Exception innerException; 5 //无参数构造函数 6 public MyException() 7 { 8 9 } 10 //带一个字符串参数的构造函数,作用:当程序员用Exception类获取异常信息而非 MyException时把自定义异常信息传递过去 11 public MyException(string msg) :base(msg) 12 { 13 this.error=msg; 14 } 15 //带有一个字符串参数和一个内部异常信息参数的构造函数 16 public MyException(string msg,Exception innerException):base(msg) 17 { 18 this.innerException=innerException; 19 this.error=msg; 20 } 21 public string GetError() 22 { 23 return error; 24 } 25 }
- 抛出自定义异常
throw new MyException("消息");
捕获自定义异常:Catch(MyException){}