在程序设计中不可避免地会出现各种各样的错误,在编写代码时须要尽量避免。

在处理错误时,首先应该分析错

误的类型,找出出错的原因才干解决错误。

错误的分类

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhhbmd6aWppZWppYXlvdQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

错误处理

一、错误处理有两种类型例如以下:

1.调试

调试我们经经常使用,什么设置断点定位错误了,并且C#定位错误很easy,还会提示错误的类型。这里就不具体说了。

2.增加异常处理的语句使程序具有容错功能

(1)C#中管理异常的四个keyword:try、catch、finally、throw。

(2)错误处理语句



(A). Try....catch

Try里面为可能异常的程序代码,Catch里面为处理异常类型的异常控制代码。

事实上跟VB中的GO TO语句差点儿相同。

Eg:通过try...catch语句来捕捉整数除零错误

<span style="font-family:KaiTi_GB2312;font-size:18px;">  using System;
  using System.Collections.Generic;
  using System.Text;
  namespace 错误处理
  { class program
   { static void Main(string[] args)
   { int x = 5,y = 0;
   try //try...catch语句
   {
   x =x/y; //引发除0错误
   }
   catch(Exception err) //捕捉该错误
   {
   Console.Writeline("{0}",err.Message); //显示错误信息
   }
   }
  
   }
  }</span>

(B).Try...catch...finally

和try...catch语句比多了个finally块,其作用是无论是否发生异常。finally块都会运行。我们全然在上个除零样例中加个finally块儿。非常easy。

(C).Throw

有两种使用方式:一种是抛出异常;一种是出现异常时通过catch块对异常处理,之后使用throw语句又一次抛出异常

Eg:在上个除零样例上加上throw例如以下

<span style="font-family:KaiTi_GB2312;font-size:18px;">  using System;
  using System.Collections.Generic;
  using System.Text;
  namespace 错误处理
  { class program
   { static void fun()
   { int x = 5,y = 0;
   try //try...catch语句
   {
   x =x/y; //引发除0错误
   }
   catch(Exception err) //捕捉该错误
   {
   Console.Writeline("{0}",err.Message); //显示错误信息
   throw; //又一次抛出异常
   }
   }
   static void Main(string[] args)
   { try
   { fun(); }
   catch (Exception err) //捕捉该错误
   { Console.WritLine("Main:{}",err.Message;}
   }
   }
  }</span>

C#中经常使用的异常类



小结

程序的编写就是不断地调试的过程,再牛的程序猿也不会写出全然没有错误的代码,本篇博文就是我们在日常C#

编程中避免和处理错误的一个小小的总结。http://blog.csdn.net/zhangzijiejiayou/article/details/9857153

是是我对VB错误处理的一个链接,希望对大家有所帮助。

小议C#错误调试和异常处理的更多相关文章

  1. 转 Python3 错误和异常/ Python学习之错误调试和测试

    ########sample 0 https://www.cnblogs.com/Simon-xm/p/4073028.html except: #捕获所有异常 except: <异常名> ...

  2. 【转】段错误调试神器 - Core Dump详解

    from:http://www.embeddedlinux.org.cn/html/jishuzixun/201307/08-2594.html 段错误调试神器 - Core Dump详解 来源:互联 ...

  3. [python]错误检测及异常处理try-except

    1. 简介 要给代码添加错误检测及异常处理,只需要将其封装在try-except中. try:通常的代码 except:处理错误和异常的代码 2. 示例 import os try: path = ' ...

  4. python基础之错误、调试(异常处理)

    在程序运行过程中,总会遇到各种各样的错误. 有的错误是程序编写有问题造成的,比如本来应该输出整数结果输出了字符串,这种错误我们通常称之为bug,bug是必须修复的. 有的错误是用户输入造成的,比如让用 ...

  5. PHP中的错误处理和异常处理

    错误处理:    1.语法错误    2.运行时的错误    3.逻辑错误 错误报告:        错误E_ERROR        警告E_WARNING        注意E_NOTICE 开发 ...

  6. PHP错误处理及异常处理笔记

    给新人总结一下PHP的错误处理. PHP提供了错误处理和日志记录的功能. 这些函数允许你定义自己的错误处理规则,以及修改错误记录的方式. 这样,你就可以根据自己的需要,来更改和加强错误输出信息以满足实 ...

  7. java程序错误类型及异常处理

    一.程序的错误类型 在程序设计中,无论规模是大是小,错误总是难免的.程序的设计很少有能够一次完成,没有错误的(不是指HelloWorld这样的程序,而是要实现一定的功能,具备一定实用价值的程序),在编 ...

  8. PHP错误调试

    一:错误类型举例 1.语法错误:一般是语句最后缺少分号.缺少单引号或双引号.for循环或函数缺少花括号.缺少变量标示符$ 2.定义错误:一般是调用不存在的变量.调用不存在的函数或者类 3.逻辑错误:代 ...

  9. python--错误了就需要调试(异常处理)

    python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误.你可以使用该功能来调试python程序. 我们可打开idle-->F1进行查看文档,里面很多异常类型,如图: ...

随机推荐

  1. 利用反射给JAVABEAN实例赋值

    为简化和统一,需要给javabean实例统一赋值,实现代码如下(已测试) import java.util.ArrayList; import java.util.Date; import java. ...

  2. jQuery实现将div中滚动条滚动到指定位置的方法

    1.JS代码: onload = function () { //初始化 scrollToLocation(); }; function scrollToLocation() { var mainCo ...

  3. log4j2异步日志解读(一)AsyncAppender

    log4j.logback.log4j2 历史和关系,我们就在这里不展开讲了.直接上干货,log4j2突出于其他日志的优势,异步日志实现. 看一个东西,首先看官网文档 ,因为前面文章已经讲解了disr ...

  4. mysql之命令行导入导出

    命令介绍 mysqldump:导出命令,在系统”命令提示符“窗口直接使用,如果提示没有此命令(前提是已经安装成功mysql),在环境变量中的path添加mysql,即path=D:\xxx\mysql ...

  5. 解决安装androidstudio无法查看源代码的问题

    如果androidstudio的sdk是自己导入的,则可能会有查看不了源代码的原因.原因是默认目录中没有这个api的源代码. 1.先在C:\Users\xxx\.AndroidStudio2.3\co ...

  6. vba txt读写的几种方式

    四种方式写txt 1.这种写出来的是ANSI格式的txt Dim TextExportFile As String TextExportFile = ThisWorkbook.Path & & ...

  7. oracle打开或者关闭flashback

    1.打开flashback: 关闭数据库 SQL>shutdown immediate; 启动到mount方式 SQL>startup mount; 如果归档没有打开,打开归档[因为fla ...

  8. msdn的原版windows下载地址链接

    http://msdn.itellyou.cn/ 所有版本的下载地址 进去点左边操作系统

  9. python之cookbook-day02

    第一章:数据结构和算法 1.2 解压可迭代对象赋值给多个变量 问题: 如果一个可迭代对象的元素个数超过变量个数时,会抛出一个 ValueError .那么 怎样才能从这个可迭代对象中解压出 N 个元素 ...

  10. java诗词横版--转为竖版

    import java.util.Arrays; /* 诗句横版转成竖版输出 */public class PrintPoem { public static void main(String[] a ...