C#常见异常

C#处理过程中存在的不同异常类型.,
MemberAccessException                           访问错误:类型成员不能被访问   
ArgumentException                               参数错误:方法的参数无效   
ArgumentNullException                           参数为空:给方法传递一个不可接受的空参数   
ArithmeticException                             学计算错误:由于数学运算导致的异常,覆盖面广。   
ArrayTypeMismatchException                      数组类型不匹配   
    
DivideByZeroException                           被零除   
FormatException                                 参数的格式不正确   
IndexOutOfRangeException              		 索引超出范围,小于0或比最后一个元素的索引还大   
InvalidCastException                            法强制转换,在显式转换失败时引发   
MulticastNotSupportedException                  不支持的组播:组合两个非空委派失败时引发   
NotSupportedException                           调用的方法在类中没有实现   
NullReferenceException                          引用空引用对象时引发   
OutOfMemoryException                            无法为新语句分配内存时引发,内存不足   
OverflowException                               溢出   
StackOverflowException                          栈溢出   
TypeInitializationException                     错误的初始化类型:静态构造函数有问题时引发   
NotFiniteNumberException			    无限大的值:数字不合法

什么是异常:异常是程序在执行是发生的错误。
导致异常的原因:
    一、代码错误,包括语法错误、逻辑错误
    二、资源不可用,这是由系统访问了未经授权的资源而引起的错误。
    三、公共语言运行库,这是有CLR内部引起的错误。
Exception类
Exception为我们提供了大量的捕获、处理异常的方法。Exception类中封装的异常处理有两种
1、由用户程序执行引发的异常,派生于ApplicationException类。
2、另一种是有公共语言运行库引发的异常,派生于SystemException类。

常见的异常类型:
SystemException:提供系统异常和应用程序异常之间的区别。
ArgumentException:当方法提供的任意一个参数无效时,引发此异常。
ArithmeticException:此异常表示由于算术运算导致的错误。
DataException:如果在使用ADO.NET组件时生成错误,引发此异常。
FormatException:当参数的格式不符合被调用方法的参数规范时,引发此异常。
IOException:当出现I/O错误是,引发此异常。
IndexOutOfRangeException:当试图使用数组边界外的索引来访问数组的元素时,引发此异常。
ArgumentNullException:在将空引用传递给无效参数的方法时,引发此异常。
OverflowException:当算数运算的结果大而无法由目标类型表示时,引发此异常。
DivideByZeroException:当试图用某个数除以零时,引发此异常。
ApplicationException:在应用程序执行过程中检测到有应用程序定义的异常。
TargetException:当试图调用无效目标时,引发此异常。
ArrayIndexOutOfBoundsException:数组小于或大于实际的数组大小。
NullPointerException:尝试访问Null对象成员。
ClassNotFoundException:不能加载所需的类。
InputMismatchException:欲得到的数据类型与实际输入数据类型不匹配。
IllegalArgumentException:方法接受到非法参数。

异常类常用属性:
Message:提供引发异常的详细信息。
Source:此属性表示导致异常发生的应用程序或对象的名称。(异常源)
StackTrace:此属性提供在堆栈上所调用方法的详细信息,并首先显示最近调用的方法。
InnerException:对内部异常的引用,如果此异常基于前一个异常,则内部异常指最初发生的异常。
C# 常见错误处理
1 ArgumentException     在向方法提供的其中一个参数无效时引发的异常  
  2 AppDomainUnloadedException   在尝试访问已卸载的应用程序域时引发的异常  
  3 ArithmeticException 因算术运算、类型转换或转换操作中的错误而引发的异常  
  4 ArrayTypeMismatchException 当试图在数组中存储类型不正确的元素时引发的异常  
  5 BadImageFormatException 当   DLL   或可执行程序的文件图像无效时引发的异常  
  6 CannotUnloadAppDomainException 卸载应用程序域的尝试失败时引发的异常  
  7 CodeDomSerializerException 当行号信息可用于序列化错误时引发的异常  
  8 LicenseException 表示当组件不能被授予许可证时引发的异常  
  9 WarningException 指定按警告(而不是错误)处理的异常  
  10 ConfigurationException 配置设置中发生错误时引发的异常  
  11 InstallException 在安装的提交、回滚或卸载阶段发生错误时引发的异常  
  12 ContextMarshalException 在尝试将对象封送过上下文边界失败时引发的异常  
  13 DataException 表示使用   ADO.NET   组件发生错误时引发的异常  
  14 DBConcurrencyException 在更新操作过程中受影响的行数等于零时,由   DataAdapter   所引发的异常  
  15 SqlException 当   SQL   Server   返回警告或错误时引发的异常。无法继承此类  
  16 InvalidPrinterException 表示当试图用无效的打印机设置来访问打印机时所引发的异常  
  17 RegistrationException 检测到注册错误时引发的异常  
  18 FormatException 当参数格式不符合调用的方法的参数规范时引发的异常  
  19 IndexOutOfRangeException 试图访问索引超出数组界限的数组元素时引发的异常  
  20 InvalidCastException 因无效类型转换或显式转换引发的异常  
  21 InvalidOperationException 当方法调用对于对象的当前状态无效时引发的异常  
  22 InternalBufferOverflowException 内部缓冲区溢出时引发的异常  
  23 IOException 发生   I/O   错误时引发的异常  
  24 ManagementException 表示管理异常  
  25 NotImplementedException 在无法实现请求的方法或操作时引发的异常  
  26 NotSupportedException 当调用的方法不受支持,或试图读取、查找或写入不支持调用功能的流时引发的异常  
  27 NullReferenceException 尝试取消引用空对象引用时引发的异常。  
  28 OutOfMemoryException 没有足够的内存继续执行程序时引发的异常  
  29 RankException 将维数错误的数组传递给方法时引发的异常  
  30 AmbiguousMatchException 当绑定到方法的操作导致一个以上的方法匹配绑定判据时引发的异常  
  31 ReflectionTypeLoadException 当模块中的任何类无法加载时由   Module.GetTypes   方法引发的异常  
  32 ServerException 当客户端连接无法引发异常的非   .NET   框架应用程序时,为向客户端传达错误而引发的异常  
  33 PolicyException 当策略禁止代码运行时引发的异常  
  34 SecurityException 检测到安全性错误时引发的异常  
  35 XmlSyntaxException 在   XML   语法分析中出现语法错误时引发的异常  
  36 TimeoutException 当已达到指定的超时时间时引发的异常  
  37 SynchronizationLockException 在从非同步的代码块中调用同步方法时引发的异常  
  38 ThreadAbortException 在对   Abort   方法进行调用时引发的异常  
  39 TypeInitializationException 作为由类初始值设定项引发的异常周围的包装引发的异常  
  40 TypeLoadException 类型加载失败发生时引发的异常  
  41 TypeUnloadedException 试图访问已卸载的类时引发的异常  
  42 UnauthorizedAccessException 当操作系统因   I/O   错误或指定类型的安全错误而拒绝访问时所引发的异常  
  43 SoapException 当通过   SOAP   调用   XML   Web   services   方法且出现异常时引发的异常  
  44 XmlSchemaException 返回关于架构异常的详细信息  
  45 XmlException 返回有关最后一个异常的详细信息  
  46 XsltException 由于在处理“可扩展样式表语言”(XSL)   转换时发生错误而引发的异常  
  47 XPathException 处理   XPath   表达式而发生错误时引发的异常 

你可能感兴趣的:(C#)