CSharp学习笔记之七 异常处理
来源:互联网 发布:为什么网络上赌博不抓 编辑:程序博客网 时间:2024/06/08 15:28
异常处理的概述:
在C#编程中,我们可以通过异常处理语句对异常进行处理。我们经常使用到的异常处理语句有throw语句、try…catch语句和try…catch…finally语句。
异常处理的方法:
在异常处理中常用throw来进行处理的异常的。其实对于throw来说,他的主要功能就是用来引发一个异常的,然后呢通过cath来捕获异常。也可以通过throw再次捕捉一个异常,因为在好的编码中会在再次引发的异常中添加更多的调试信息,这样以便用来进行更加的深入的调试工作。
下面给出一个引发异常额例子:
namespace throw语句的应用演示{ class Program { static void Main(string[] args) { Console.WriteLine("throw语句的应用---除法运算"); Console.Write("输入第一个数:"); double var1 = double.Parse(Console.ReadLine()); Console.Write("输入第二个数:"); double var2 = double.Parse(Console.ReadLine()); Test te = new Test(); te.Division(var1,var2); Console.ReadLine(); } } class Test { public void Division(double var1, double var2) { if (var2==0) { //抛出System.DivideByZeroException异常 throw new System.DivideByZeroException(); } else { Console.WriteLine(var1+"/"+var2+"={0}", var1 / var2); } } }}
然后就是try...cath语句,在大多数情况先,将可能引发异常的数据放在try中,将异常处理的数据放在catch中这样通过这样的方式来进行异常的捕获。
如下所示
try
{
// 可能引发异常的代码
}
catch(异常类名 异常变量名)
{
// 用于处理异常的代码
}
{
// 可能引发异常的代码
}
catch(异常类名 异常变量名)
{
// 用于处理异常的代码
}
还是要通过一个例子来演示异常的捕获情况。
namespace try_catch使用演示{ class Program { static void Main(string[] args) { try { Console.WriteLine("try_catch使用演示"); Console.Write("请输入第一个数:"); string var1 = Console.ReadLine(); int var2 = Convert.ToInt32(var1); Console.ReadLine(); } catch (Exception ex) { Console.WriteLine("捕获到的异常:{0}", ex); Console.ReadLine(); } } }}
还有的方法就是通过try...catch...finally来使用异常的。通过异常的,具体的使用过过程如下所示
try
{
// 可能出现异常的语句
}
catch(异常类名 变量名)
{
// 处理异常的语句
}
……
finally
{
// 总是执行的语句
}
{
// 可能出现异常的语句
}
catch(异常类名 变量名)
{
// 处理异常的语句
}
……
finally
{
// 总是执行的语句
}
自定义异常:
对于c#来说,用户可以通过自己来进行自定义异常的。NET框架提供从根基类Exception派生的异常类层次结构,这些类中的每一个都定义了一个特定的异常,因此在很多情况下只需捕获该异常。如果有特殊需要,我们也可以通过从ApplicationException类派生来创建自己的异常类。创建自己的异常类时,好的编码做法是在用户自定义的异常类名的结尾加上“Exception”这个词。
对于c#来说,用户可以通过自己来进行自定义异常的。NET框架提供从根基类Exception派生的异常类层次结构,这些类中的每一个都定义了一个特定的异常,因此在很多情况下只需捕获该异常。如果有特殊需要,我们也可以通过从ApplicationException类派生来创建自己的异常类。创建自己的异常类时,好的编码做法是在用户自定义的异常类名的结尾加上“Exception”这个词。
0 0
- CSharp学习笔记之七 异常处理
- SpringMVC学习笔记(七)处理异常
- Python3学习七之异常处理
- java学习初探七之异常处理
- JNI学习笔记(七)——异常处理
- java学习笔记七——异常处理
- CSharp学习笔记之五 结构
- CSharp学习笔记之六 类
- CSharp学习笔记之九 多线程编程
- CSharp学习笔记之十三 反射
- oralce学习笔记之异常处理篇
- oralce学习笔记之异常处理篇
- php学习笔记之php异常处理
- WCF 学习笔记之异常处理
- C++之异常处理学习笔记
- php学习笔记之PDO异常处理
- Java学习笔记之异常处理
- JavaSE学习笔记之-----异常处理
- 拷贝出你GAC里面的DLL文件
- crontab
- 没有JavaScript,你的网页会是啥样?
- Android布局管理器 - 详细解析布局实现
- 开发者最容易犯的13个JavaScript错误
- CSharp学习笔记之七 异常处理
- 在网络上或不在网络上运行 SQL Server
- Thread-Safe Class Design
- 《JavaScript DOM 编程艺术》读书笔记
- 毫米波器件发展现状及石墨烯毫米波器件优势
- c#验证码识别、图片二值化、分割、分类、识别
- 分析优酷/土豆/pptv HTML5、m3u8地址
- 用c++二维数组玩点阵数字显示
- javascript 鼠标事件总结