C#学习笔记——异常处理

简介:
在编写程序时,不仅要注意程序代码的准确性与合理性,还要处理程序中可能出现的异常情况。在现代编程语言中,异常处理是解决这些问题的主要方法。异常处理是一种功能强大的机制。

在.NET类库中,提供了针对各种异常情况所设计的异常类,这些类包含类异常的相关信息。配和异常处理语句,应用程序能够轻易的避免程序执行时可能中断应用程序的各种错误。.NET中公共异常类如下表所示:

异常类 说明
System.ArithmeticException 在算术运算期间发生的异常。
System.ArrayTypeMismatchException 但存储一个数组时,如果由于被储存的元素的实际类型与数组的实际类型不兼容而导致存储失败,就会引发此异常。
System.DivideByZeroException 在试图用零除整数值是引发
System.IndexOutOfRangeException 在试图用小于0或超出数组界限的下标索引数组时引发。
System.InvalidCastException 当从基类型或接口到派生类型的显示转换在运行时失败,就会引发异常。
System.NullReferenceException 在需要使用引用对象的场合,如果使用null引用,就会引发此异常。
System.OutOfMemoryException 在分配内存的尝试失败时引发
System.OverflowException 在选中的上下文中所进行的算术运算、类型转换或转换操作导致溢出时引发的异常。
System.StackOverflowException 挂起的方法调用过多而导致执行堆栈溢出时引发的异常。
System.TypeInitializationException 在静态构造函数引发异常并且没有可以捕捉到它的catch子句时引发。

 

 

1

throw语句、

2

try…catch语句、

3

try…catch…finally语句。

 

throw语句用于主动引发一个异常,使用throw语句可以在特定的情形下,自行抛出异常。

   1: throw ExObject;  //ExObject是所要抛出的异常对象,该对象是派生自System.Exception类的类对象。

 

   1: try
   2: {
   3:     //被监控的代码
   4: }
   5: catch(异常类名 异常变量)
   6: {
   7:     //异常处理
   8: }
   1: try
   2: {
   3:     //被监控的代码
   4: }
   5: catch(异常类名 异常变量)
   6: {
   7:    //异常处理 
   8: }
   9: finally
  10: {
  11:     //无论监控代码异常与否都要执行的代码
  12: }
作者: 韩兆新
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
分类:  [01]C#语言基础
标签:  C#学习笔记

本文转自韩兆新博客博客园博客,原文链接:http://www.cnblogs.com/hanzhaoxin/archive/2012/12/15/2819554.html,如需转载请自行联系原作者
目录
相关文章
|
程序员 C#
深入理解 C# 编程:枚举、文件处理、异常处理和数字相加
枚举是一个特殊的“类”,表示一组常量(不可更改/只读变量)。 要创建枚举,请使用 enum 关键字(而不是 class 或 interface),并用逗号分隔枚举项:
208 0
|
10月前
|
存储 SQL 数据库连接
C#程序调用Sql Server存储过程异常处理:调用存储过程后不返回、不抛异常的解决方案
本文分析了C#程序操作Sql Server数据库时偶发的不返回、不抛异常问题,并提出了解决思路。首先解析了一个执行存储过程的函数`ExecuteProcedure`,其功能是调用存储过程并返回影响行数。针对代码执行被阻塞但无异常的情况,文章总结了可能原因,如死锁、无限循环或网络问题等。随后提供了多种解决方案:1) 增加日志定位问题;2) 使用异步操作提升响应性;3) 设置超时机制避免阻塞;4) 利用线程池分离主线程;5) 通过信号量同步线程;6) 监控数据库连接状态确保可用性。这些方法可有效应对数据库操作中的潜在问题,保障程序稳定性。
751 11
|
C#
C#中的数组型参数学习笔记
C#中的数组型参数学习笔记
152 1
|
运维 C# UED
C# 一分钟浅谈:异常处理的最佳实践
【9月更文挑战第5天】在软件开发中,异常处理对保证程序稳定性和用户体验至关重要。本文从基础概念入手,详细讲解C#中的异常处理策略,并通过代码示例说明如何有效实现异常管理。文章涵盖`try`、`catch`和`finally`块的使用,探讨常见问题如忽略异常和过度捕获,并提出最佳实践建议,如使用具体异常类型、记录异常信息及优雅地处理异常,助力开发者构建更健壮的应用程序。
811 1
|
C#
C#异常处理
C#异常处理
208 0
|
消息中间件 开发框架 安全
WPF/C#:异常处理
WPF/C#:异常处理
282 0
halcon联合c#、WPF学习笔记三(dispatcherTimer实时相机显示)
halcon联合c#、WPF学习笔记三(dispatcherTimer实时相机显示)
880 2
halcon联合c#、WPF学习笔记三(dispatcherTimer实时相机显示)
|
测试技术 持续交付 C#
C#程序基础开发入门学习笔记
C#是一种现代的、面向对象的编程语言,广泛应用于Windows应用程序开发、游戏开发(尤其是Unity引擎)、Web应用程序以及跨平台应用等。
335 0
|
C# C++
halcon联合c#、WPF学习笔记一(WPF配置halcon)
halcon联合c#、WPF学习笔记一(WPF配置halcon)
1638 1
halcon联合c#、WPF学习笔记二(简单案例)
halcon联合c#、WPF学习笔记二(简单案例)
1608 0