检查异常以及异常的使用方式
- 6 分钟
在本模块的前面部分,你了解到 C# 中的运行时错误称为异常,你需要在它们导致应用程序故障之前“捕获”它们。 真的吗? 在异常导致应用程序故障之前捕获异常听起来更像是视频游戏,而不是编写应用程序。 那么,“捕获”异常到底意味着什么呢? 要回答该问题,首先需要仔细研究什么是异常。
什么是异常?
下面是一个更正式的定义,描述什么是异常以及如何在 C# 应用程序中使用异常:
在 C# 中,程序中的运行时错误通过使用一种称为“异常”的机制在程序中传播。 异常由遇到错误的代码引发,由能够更正错误的代码捕捉。 异常可由 .NET 运行时或由程序中的代码引发。 异常由从 Exception 派生的类表示。 每个类标识异常的类型,并包含详细描述异常的属性。
重要
本次培训不需要深入了解 .NET 类。 如果此定义有点令人困惑,请不要担心。 无需深入了解类即可在代码中使用异常。
Microsoft 提供了详细介绍异常的文档。 但是,此定义提供了你目前所需的信息。 具体而言,你需要了解两点:
- 你需要了解什么是异常。
- 需要了解如何在应用程序中使用异常。
可以将异常视为具有额外功能的变量。 可以执行与对变量执行的相同类型的异常操作,例如:
- 可以创建不同类型的异常。
- 可以访问异常的内容。
“引发”和“捕获”异常意味着什么?
术语“引发”和“捕获”可以通过评估异常的定义来解释。
定义的第二句话显示“异常由遇到错误的代码引发,并由可更正错误的代码捕获”。 该句子的第一部分表示,当代码中发生错误时,.NET 运行时会创建异常。 句子的第二部分表示,可以编写代码来捕获引发的异常。 此外,捕获异常的代码可用于完成纠正措施,希望能够缓解引起错误的代码所导致的情况。 换句话说,你可以编写代码,以便在发生错误时保护应用程序。
在评估定义的第二个句子后,你将了解到以下内容:
- 当代码生成错误时,会在运行时创建异常。
- 可以将异常视为具有一些额外功能的变量。
- 可以编写访问异常并采取纠正措施的代码。
定义的剩余部分告知如果 .NET 运行时检测到错误,则会生成异常。 生成的异常包含有关发生的错误的信息。 代码可以使用异常中存储的信息捕获异常并更正问题。
回顾
在本单元中,应谨记以下几个重要事项:
- 异常在 C# 中用于在运行时传播错误,并由派生自
Exception类的类表示。 - 异常由遇到错误的代码引发,由能够更正错误的代码捕捉。
- 捕获异常时,代码可以访问其内容并采取纠正措施来缓解错误。
- .NET 运行时在检测到错误时生成异常,该异常包含有关所发生错误类型的信息。