C#创建自定义异常类_抛出异常类附加错误码_自定义异常类抛出错误码
2014-08-20 16:59:44  By: shinyuu

今天在项目里面遇到一个问题、需要抛出一个异常、一般情况下,我们使用系统内部提供的异常就足够了

但是我的需求了、抛异常的时候要传递一个错误码、使用系统内部提供的异常不能满足了

这个时候就必须使用用户自定义异常,本文讨论的异常处理机制,以及如何创建、抛出和捕获用户自定义异常

所有的用户自定义异常类都必须由Exception类或者Exception类的子类派生,所以必须显示指明异常类的基类


// MyException这个类是Exception 的子类
public class TakeCarException:Exception;
//则MyException是DivideByZeroException类的子类
public class TakeCarException: DivideByZeroException;
现在我要说的就是使用 Exception 来自定义异常处理类


给TakeCarException添加错误码、用于保存自定义的异常错误码


public virtual int _errorCode { get; set; }
给TakeCarException添加无参数的构造方法



public TakeCarException(int ErrorCode)
{
	this._errorCode = ErrorCode;
}
给TakeCarException添加两个参数的构造方法,并且指明使用父类的一个参数的构造方法



public TakeCarException(int ErrorCode, string ErrorMessage)
	: base(ErrorMessage)
{
	this._errorCode = ErrorCode;
}
添加一个获取错误码的方法



public int ErrorCode
{
	get
	{
		return this._errorCode;
	}
}
到这里、你的自定义异常就写好了、那么正则就是抛出自定义异常



throw new TakeCarException(错误码,"异常信息");
捕获并处理异常对象



try{}
catch (Exception ex)
{
	//如果是我们自定义的异常
	if (ex is TakeCarException)
	{
		//获取异常信息
		//ex.Message;
		//获取错误码
		//((TakeCarException)ex).ErrorCode;
	}
	else
	{
		//获取异常信息
		//ex.Message;
	}
}


若资源对你有帮助、浏览后有很大收获、不妨小额打赏我一下、你的鼓励是维持我不断写博客最大动力

想获取DD博客最新代码、你可以扫描下方的二维码、关注DD博客微信公众号(ddblogs)

或者你也可以关注我的新浪微博、了解DD博客的最新动态:DD博客官方微博(dwtedx的微博)

如对资源有任何疑问或觉得仍然有很大的改善空间、可以对该博文进行评论、希望不吝赐教

为保证及时回复、可以使用博客留言板给我留言: DD博客留言板(dwtedx的留言板)

感谢你的访问、祝你生活愉快、工作顺心、欢迎常来逛逛


快速评论


技术评论

DD记账
top
+