黑马程序员技术交流社区

标题: C#中常见的异常有哪些呀? [打印本页]

作者: 幸福的彼岸    时间: 2014-1-16 17:17
标题: C#中常见的异常有哪些呀?
本帖最后由 幸福的彼岸 于 2014-1-16 20:14 编辑

C#中常见的异常有哪些呀?怎么捕获这些异常呢?
作者: 沈可    时间: 2014-1-16 18:18
本帖最后由 沈可 于 2014-1-16 18:23 编辑

//System
ArgumentNullException //参数异常
ArgumentOutOfRangeException //参数异常
DivideByZeroException //除数为0异常
IndexOutOfRangeException //索引超出范围的异常
NullReference-Exception//参数异常
OverflowException //溢出异常
StackOverflowException //堆溢出异常
-----------------------------------------------
//System.IO

DirectoryNotFoundException//找不到路径的异常
EndOfStreamException //结束流的异常
FileNotFoundException//找不到文件异常
PathToo-LongException //路径太长异常
----------------------------------------------------
//System.Data
DuplicateNameException
InvalidConstrainException
InvalidExpressionException
Missing-PrimaryKeyException
NoNullAllowed-Exception
ReadOnlyException
-----------------------------------
//System.Runtime.InteropServices
InvalidComObjectException
InvalidOleVariantTypeException
SEHException


可以通过
try{}
catch(exception )
{
    messagebox.show(ex.message);//抛出异常
}

作者: 沈可    时间: 2014-1-16 18:26
SystemException:运行时产生的所有错误的基类。
   
    IndexOutOfRangeException:当一个数组的下标超出范围时运行时引发。
   
    NullReferenceException:当一个空对象被引用时运行时引发。
   
    InvalidOperationException:当对方法的调用对对象的当前状态无效时,由某些方法引发。
   
    ArgumentException:所有参数异常的基类。
   
    ArgumentNullException:在参数为空(不允许)的情况下,由方法引发。
   
    ArgumentOutOfRangeException:当参数不在一个给定范围之内时,由方法引发。
   
    InteropException:目标在或发生在CLR外面环境中的异常的基类。
   
    ComException:包含COM类的HRESULT信息的异常。
   
    SEHException:封装Win32结构异常处理信息的异常。

     SqlException:封装了SQL操作异常。

将可能引发异常的代码段放在 Try 块中,而将处理异常的代码放在 Catch 块中,抛出异常。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2