admin 管理员组文章数量: 1184232
2024年2月23日发(作者:安全员c证考试题库)
C# 内部异常
在.NET Framework中,异常是从Exception类继承的对象。ion异常类派生于,通常情况下不在代码中抛出这个ion对象,因为它无法确定错误情况的本质。但用户可以使用派生于ion类的异常类对象来更明确表示异常。内部异常也称为预定义异常,它是.NET中使用的内部异常类的对象。如表7-4所示列出了.NET中使用的内部异常类:
表7-4 .NET中使用的内部异常类
内部异常类
SystemException
说明
所有由运行时环境抛出的异常的基类。通常由.NET运行库生成,也可以由应用程序生成。例如,如果.NET运行库检测到堆栈已满,就会抛出StackOverflowException。另一方面,如果检测到调用方法时参数不正确,可以在自己的代码中选择抛出ArgumentException或其子类。Exception的子类包括表示致命错误和非致命错误的异常
ApplicationException 这个类非常重要,因为它是第三方定义的异常基类。如果自己定义的异常覆盖了应用程序独有的错误情况,就应使它们直接或间接派生于ationException
StackOverflowException 如果分配给堆栈的内存区域已满,就会抛出这个异常。如果一个方法连续地递归调用它自己,就可能发生堆栈溢出。这一般是一个致命错误,因为它禁止应用程序执行除了中断以外的其他任务。在这种情况下,甚至也不可能执行finally块,通常用户自己不能处理像这样的错误,而应退出应用程序
EndOfStreamException
OverflowException
IndexOutOfRangeException
InvalidCastException
InternalBufferOverflowException
InvalidDataException
IOException
ArgumentException
AugumentNullException
ArithmeticException
在数据流的格式无效时引发的异常
发生I/O错误时引发的异常
所有参数异常的基类
该异常由不允许空参数的方法抛出
因算术运算、类型转换或转换操作中的错误而引发的异常
这个异常通常是因为读到文件末尾而抛出的
如果要在checked环境下把包含值–40的int类型数据转换为uint数据,就会抛出这个异常
当出现数组越界时,将抛出该异常
因无效类型转换或显式转换引发的异常
内部缓冲区溢出时引发的异常
FormatException
ExternalException
SEHException
当方法调用中实参的格式不符合对应的形参类型的格式时,该异常将被抛出
该类异常在运行库的外部环境中发生,或者是针对这个类型环境的异常的基类
该异常类封装了Win32结构化异常处理信息
版权声明:本文标题:C# 内部异常 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1708668878a528971.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论