mysql 自定义抛出异常_C#自定义异常(throw抛出异常)
虽然在 C# 语言中已经提供了很多异常处理类,但在实际编程中还是会遇到未涉及的一些异常处理。
例如想将数据的验证放置到异常处理中,即判断所输入的年龄必须为 18〜45,此时需要自定义异常类来实现。
自定义异常类必须要继承 Exception 类。
声明异常的语句如下。
class 异常类名 :Exception
{
}
抛出自己的异常,语句如下
throw( 异常类名 );
下面通过实例来演示自定义异常的应用。
【实例】自定义异常类,判断从文本框中输入的年龄值处于 18〜45。
根据题目要求,设计一个 Windows 窗体,界面如下图所示。
编写自定义异常类,代码如下。
class MyException :Exception
{
public MyException(string message) : base(message)
{
}
}
在“验证”按钮的单击事件中根据输入的年龄判断是否抛出自定义异常,代码如下。
private void button1_Click(object sender, EventArgs e)
{
try
{
int age = int.Parse(textBox1.Text);
if (age < 18 || age > 45)
{
throw new MyException("年龄必须在18~45岁之间!");
}
else
{
MessageBox.Show("输入的年龄正确!");
}
}
catch(MyException myException)
{
MessageBox.Show(myException.Message);
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
}
运行该窗体,若在窗体上输入不符合要求的年龄,效果如下图所示。
从运行效果可以看出,若在文本框中输入的年龄不在 18〜45 岁即会抛出自定的异常。
自定义异常也继承自 Exception 类,因此如果不直接处理 MyException 异常,也可以直接使用 Exception 类来处理该异常。
mysql 自定义抛出异常_C#自定义异常(throw抛出异常)相关推荐
- java抛异快捷键_Java 如何抛出异常、自定义异常、手动或主动抛出异常
public static voidmain(String[] args) {try{throw new Exception("抛出异常"); }catch(Exception e ...
- java自定义异常类_Java抛出异常与自定义异常类应用示例
本文实例讲述了Java抛出异常与自定义异常类.分享给大家供大家参考,具体如下: 异常处理常用方法: 常用的异常处理方法有: 一.try()catch() 语句 二.throw / throws 语句 ...
- java throw抛出异常
1.throws关键字通常被应用在声明方法时,用来指定可能抛出的异常.多个异常可以使用逗号隔开.当在主函数中调用该方法时,如果发生异常,就会将异常抛给指定异常对象.如下面例子所示: public cl ...
- C++的throw抛出异常机制
关于C++的"抛出异常"机制: 关键点: (1)throw是将抛出的表达式的值拷贝到"异常对象"中,catch则是根据异常对象进行参数匹配并处理异常: (2)t ...
- python网络编程-异常处理-异常捕获-抛出异常-断言-自定义异常-UDP通信-socketserver模块应用-03
python网络编程-异常处理-异常捕获-抛出异常-断言-自定义异常-UDP通信-socketserver模块应用-03 参考文章: (1)python网络编程-异常处理-异常捕获-抛出异常-断言-自 ...
- java学习中,异常和错误的简介、捕获异常、抛出异常、自定义异常、finally关键字(java 学习中的小记录)
java学习中,异常和错误的简介.捕获异常.抛出异常.自定义异常.finally关键字(java 学习中的小记录) 参考文章: (1)java学习中,异常和错误的简介.捕获异常.抛出异常.自定义异常. ...
- Java 如何抛出异常、自定义异常、手动或主动抛出异常
Java 如何抛出异常.自定义异常.手动或主动抛出异常 参考文章: (1)Java 如何抛出异常.自定义异常.手动或主动抛出异常 (2)https://www.cnblogs.com/panchang ...
- java抛出异常的方法_Java抛出异常处理的示例详解
这篇文章主要介绍了java 抛出异常处理的方法的相关资料,throws关键字通常被应用在声明方法时,用来指定可能抛出的异常,这里就讲下如何使用,需要的朋友可以参考下 java 抛出异常处理的方法 为了 ...
- 安装MYSQL自定义安装路径
安装MYSQL自定义安装路径 MYSQL8.0版本,使用开发者默认安装的话,会自动安装到C盘,有点小介意,所以又卸载重新安装了,卸载过程中遇到了一些小问题,MySQL Connector NET无法卸 ...
最新文章
- Extjs 基础篇—— Function基础
- struts2学习笔记--使用servletAPI实现ajax的一个小Demo
- 【Android 性能优化】布局渲染优化 ( GPU 过度绘制优化总结 | CPU 渲染过程 | Layout Inspector 工具 | View Tree 分析 | 布局组件层级分析 )
- 在计算机领域里,只有想不到,没有做不到
- 【算法基础】坚持刷题678天的感受!
- java学习(47):带参无返回
- HTML里面Textarea换行总结
- 虚拟机VMware搭建代码环境
- 降价200!华为部分手机已取消充电器和数据线,网友表示可以接受
- 小程序自定义tabbar占位问题
- SQL SERVER 报表开发工具入门教程
- python无限循环小数是有理数吗_证明:所有无限循环小数都是无理数
- ArcGIS Pro 专题图制作
- 笔记本电脑windows10有线连接开无线热点方法已经成功
- 新入手Seagate希捷1TB移动硬盘1t USB3.0一个
- Mencoder MPlayer 参数详解
- AspNetCore3.1 在CentOS 用docker发布 踩坑辛酸史
- WinDbg 常用指令
- 果园大二下英方课学习姿势
- windows 任务栏桌面消失怎么办
热门文章
- 图片上传之FileAPI与NodeJs
- MinGW+Lua环境配置小结
- 一起谈.NET技术,在Mono 2.8上部署ASP.NET MVC 2
- 国庆广州(羊城)之旅
- Could not resolve archetype org.apache.maven.archetypes:maven-archetype-quickstart
- linux 定时任务 crontab服务 启动 停止 重启
- linux lsof 已打开的文件列表
- Linux ps命令详解与示例说明
- VC 利用DLL共享区间在进程间共享数据及进程间广播消息
- VC6如何使用VS2005中的CImage类功能