一, 什么叫异常?
异常就是程序运行时的错误,它违反了一个系统约束或应用程序约束,或出 现了在正常操作时未预料的情形。如用0去除一个数时就会发生异常。
二, try…catch…finally…语句的结构?
未例:
try
{
Statement;
}
catch(…)
{
Statement;
}
finally
{
Statement;
}
1、 try块包括正被异常保护的代码。
2、 catch块是处理异常的代码块,也称异常处理程序。
3、 finally块是在所有情况下无论如何都要执行的代码,无论有没有异常发生。
三, 综合示例:
namespace try_catch
{
class Program
{
static voidMain(string[] args)
{
MyClass mc = new MyClass();
try
{
mc.A();
}
catch (DivideByZeroException)
{
Console.WriteLine("catch clause inMain()");
}
finally
{
Console.WriteLine("finally clause inMain()");
}
Console.WriteLine("After try statement inMain.");
Console.WriteLine(" --keep running!");
}
}
class MyClass
{
public void A()
{
try
{
B();
}
catch (System.NullReferenceException)
{
Console.WriteLine("catch clause in A()");
}
finally
{
Console.WriteLine("finally clause in A()");
}
}
protected void B()
{
int x = 10, y = 0;
try
{
x /= y;
}
catch (System.IndexOutOfRangeException)
{
Console.WriteLine("catch clause in B()");
}
finally
{
Console.WriteLine("finally clause in B()");
}
}
}
}
程序输出结果为:
finally clause in B()
finally clause in A()
catch clause inMain()
finally clause inMain()
After try statement inMain.
--keep running.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架