第5章 - 异常处理
嗨,朋友!我是长安。
程序运行时难免会遇到错误,这一章我们要学习如何优雅地处理这些异常。
🤔 什么是异常?
异常是程序运行时发生的错误,如除数为零、文件不存在等。
try
{
int result = 10 / 0; // 除数为零,抛出异常
}
catch (DivideByZeroException ex)
{
Console.WriteLine($"发生错误:{ex.Message}");
}
finally
{
Console.WriteLine("无论是否发生异常都会执行");
}
🎯 常见异常类型
| 异常类型 | 说明 |
|---|---|
NullReferenceException | 空引用 |
DivideByZeroException | 除数为零 |
IndexOutOfRangeException | 索引越界 |
FileNotFoundException | 文件未找到 |
FormatException | 格式错误 |
💡 自定义异常
class AgeException : Exception
{
public AgeException(string message) : base(message)
{
}
}
void SetAge(int age)
{
if (age < 0 || age > 150)
throw new AgeException("年龄必须在0-150之间");
}
📝 本章小结
- 使用 try-catch-finally 处理异常
- catch 捕获特定类型的异常
- finally 始终执行,用于清理资源
- 可以创建自定义异常类
- throw 关键字抛出异常
