.net中“抛出异常”是怎么一回事? 目的是什么?

来源:百度知道 编辑:UC知道 时间:2024/09/23 08:26:17
对这个概念比较模糊,打个比方说明下
你们不要弄这么多 能理解我就不在这问了 根据你的经验 笼统地说明下就行

经常有这样一种错误机制,返回一个错误代码。这样的错误机制很常见,也很笼统。

异常是一个类,首先,告诉你,这是个异常情况。
你可以自定义异常的信息以及其他足够多的信息。

简单说说就是这样。

2楼说的挺通俗易懂的,顶!其实就是错误的提示,就这么简单!

C#异常处理

正如许多OOP语言一样,C#也能处理可遇见的,反常条件(丢失网络连接,文件丢失)下的异常。当应用程序遇到异常情况,它将“抛”出一个异常,并终止当前方法,直到发现一个异常处理,那个堆栈才会清空。
这意味着如果当前运行方法没有处理异常,那么将终止当前方法,并调用方法,这样会得到一个处理异常的机会。如果没有调用方法处理它,那么该异常最终会被CLR处理,它将终止程序
可以使用try/catch块来检测具有潜在危险的代码,并使用操作系统或者其他代码捕捉任何异常目标。Catch块用来实现异常处理,它包含一个执行异常时间的代码块,理想情况下,如果捕捉并处理了异常,那么应用程序可以修复这个问题并继续运行下去。及时应用程序不能继续运行,也可以捕捉这些异常,并显示有意义的错误信息,使应用程序安全种植。同时,你也有机会将这些错误书写入日志中。
如果在方法中有一段代码无论是否碰到以外都必须运行(例如,释放已经分配的资源,关闭一个打开的文件)那么可以吧代码放在finally块中。这样甚至在存在异常的代码中也能保证其运行。
一、C#异常的发生
公共语言运行库支持基于异常对象和受保护代码块概念的异常处理模型.即当运行库在异常发生时,运行库就会创建一个表示该异常的对象.当然你也可以通过从适当的基异常派生类来创建自己的异常类.
当发生非致命应用程序错误时,就会引发ApplicationException 类及其派生类类型的异常.
我们可以通过使用Throw语句显式引发异常. 也可以使用Throw语句再次引发已经捕获的异常. 好的编码做法是向再次引发的异常添加信息以在调试时提供更多信息. 而异常的处理方法,在所有使用运行库的语言都以相似的方式处理异常. 即大多数语言都使用try/catch/finally形式的结构化异常处理.
二、C#