调试测试和异常处理.pptVIP

  • 3
  • 0
  • 约7.97千字
  • 约 34页
  • 2019-11-06 发布于广东
  • 举报
* 5.自定义异常类创建 1.创建一个ApplicationException子类,空值异常 public class MyException : System.ApplicationException {// 重写构造函数 public MyException():base() { } //Message属性的重载 public override string Message { get { return 不允许为空值 ; } } } * 引发自定义异常 2.在程序方法中可以通过throw语句引发异常 if (textBox1.Text == ) { throw new MyException(); } * 示例-建立自定义异常 using System; public class EmailCheckException:ApplicationException { public string _mes; //重写构造函数 public EmailCheckException():base() { _mes = null; } public EmailCheckException(string message):base() { _mes = message.ToString(); } public EmailCheckException(string message, Exception myNew):base(message,myNew) { _mes = message.ToString(); } //Message属性的重载 public override string Message { get { return 格式错误; } } } * 示例-throw引发异常 private bool InfoSave ( string email) { string[] subStrings = email.Split(@); //如果输入的Email不是被“@”字符分割成两段,则抛出Email错误异常 if(subStrings.Length != 2) { throw new EmailCheckException(); } else { int index = subStrings[1].IndexOf(.); //查找被“@”字符分成的两段的后一段中“.”字符的位置,没有“.” //或者“.”字符是第一个字符,则抛出EmailErrorException异常 if(index = 0) { throw new EmailCheckException(); } //如果“.”字符是最后一个字符,抛出EmailErrorException异常 if(subStrings[1][subStrings[1].Length -1] == .) { throw new EmailCheckException(); } } return true; } * 示例-Catch自定义异常 private void Submit_Click(object sender, System.EventArgs e) { if(textName.Text.Length == 0 textEmail.Text.Length == 0) { MessageBox.Show(请填写正确的信息!, 填写提示 , MessageBoxButtons.OK , MessageBoxIcon.Information); return; } try { InfoSave( textEmail.Text); } catch(EmailCheckException err) { MessageBox.Show(err.Message, 邮件格式错误 ,System.Windows.Forms.MessageBoxButtons.OK , MessageBoxIcon.Information); return; } MessageBox.Show(“发送成功。, 成功 , MessageBox

文档评论(0)

1亿VIP精品文档

相关文档