Tutorialsteacher

关注我们

文章
  • C#
  • C# 面向对象编程
  • ASP.NET Core
  • ASP.NET MVC
  • LINQ
  • 控制反转 (IoC)
  • Web API
  • JavaScript
  • TypeScript
  • jQuery
  • Angular 11
  • Node.js
  • D3.js
  • Sass
  • Python
  • Go lang
  • HTTPS (SSL)
  • 正则表达式
  • SQL
  • SQL Server
  • PostgreSQL
  • MongoDB
  • C# - 入门
  • C# - 版本历史
  • C# - 第一个程序
  • C# - 关键词
  • C# - 类和对象
  • C# - 命名空间
  • C# - 变量
  • C# - 隐式类型变量
  • C# - 数据类型
  • 数字
  • 字符串
  • DateTime
  • 结构体
  • 枚举
  • StringBuilder
  • 匿名类型
  • 动态类型
  • 可空类型
  • C# - 值类型和引用类型
  • C# - 接口
  • C# - 运算符
  • C# - if else 语句
  • C# - 三元运算符 ?
  • C# - Switch 语句
  • C# - For 循环
  • C# - While 循环
  • C# - Do-while 循环
  • C# - 分部类
  • C# - Static 关键字
  • C# - 数组
  • 多维数组
  • 交错数组
  • C# - 索引器
  • C# - 泛型
  • 泛型约束
  • C# - 集合
  • ArrayList
  • List
  • SortedList
  • Dictionary
  • Hashtable
  • Stack
  • Queue
  • C# - Tuple
  • C# - ValueTuple
  • C# - 内置异常
  • 异常处理
  • throw 关键字
  • 自定义异常
  • C# - 委托
  • Func 委托
  • Action 委托
  • Predicate 委托
  • 匿名方法
  • C# - 事件
  • C# - 协变
  • C# - 扩展方法
  • C# - 流 I/O
  • C# - File 类
  • C# - FileInfo 类
  • C# - 对象初始化器
  • OOP - 概述
  • 面向对象编程
  • 抽象
  • 封装
  • 关联与组合
  • 继承
  • 多态
  • 方法重写
  • 方法隐藏
  • C# - SOLID 原则
  • 单一职责原则
  • 开闭原则
  • 里氏替换原则
  • 接口隔离原则
  • 依赖倒置原则
  • 设计模式
  • 单例模式
  • 抽象工厂模式
  • 工厂方法模式
Entity Framework Extensions - 提升 EF Core 9
  批量插入
  批量删除
  批量更新
  批量合并

C# 中的内置异常类

在这里您将学习 C# 中的内置异常类。

C# .NET 包含用于各种可能错误的内置异常类。Exception 类是所有异常类的基类。

以下是 .NET 中异常类的层次结构

Exception Classes in .NET

上图中,Exception 类是 SystemException 和 ApplicationException 类的基类。SystemException 类是 .NET Framework 中所有内置异常类的基类。

ApplicationException 曾被推荐作为所有自定义异常类的基类(当无法使用系统异常类且您需要新的异常类来处理业务规则冲突或其他应用程序相关错误时,应创建自定义异常类)。它旨在区分应用程序定义的异常与系统定义的异常。然而,Microsoft 现在建议自定义异常类从 Exception 类而不是 ApplicationException 类派生。

下图显示了在运行时访问 null 对象属性时,在 Visual Studio 调试模式下如何抛出 NullReferenceException。

NullReferenceException

内置异常类

下表列出了 .NET 中重要的内置异常类。

异常类描述
ArgumentException当传递给方法的非 null 参数无效时引发。
ArgumentNullException当 null 参数传递给方法时引发。
ArgumentOutOfRangeException当参数的值超出有效值范围时引发。
DivideByZeroException当整数值除以零时引发。
FileNotFoundException当物理文件在指定位置不存在时引发。
FormatException当值不处于适当的格式,无法通过转换方法(如 Parse)从字符串转换时引发。
IndexOutOfRangeException当数组索引超出数组或集合的下限或上限时引发。
InvalidOperationException当方法调用在对象的当前状态下无效时引发。
KeyNotFoundException当访问集合中成员的指定键不存在时引发。
NotSupportedException当方法或操作不受支持时引发。
NullReferenceException当程序访问 null 对象的成员时引发。
OverflowException当算术、类型转换或转换操作导致溢出时引发。
OutOfMemoryException当程序没有足够的内存来执行代码时引发。
StackOverflowException当内存中的堆栈溢出时引发。
TimeoutException分配给操作的时间间隔已过期。

当发生错误时,应用程序代码或默认处理程序会处理异常。在下一节中学习如何处理异常。

TUTORIALSTEACHER.COM

TutorialsTeacher.com 是您权威的技术教程来源,旨在通过循序渐进的方法,指导您掌握各种网络和其他技术。

我们的内容旨在帮助所有级别的学习者轻松快速地学习技术。访问本平台即表示您已审阅并同意遵守我们的使用条款和隐私政策,这些条款旨在保护您的体验和隐私权。

[email protected]

关于我们使用条款隐私政策
copywrite-symbol

2024 TutorialsTeacher.com. (v 1.2) 版权所有。