C#学习笔记 ----错误和异常

一般异常类System.Exception派生自System.Object

俩个重要类,派生自System.Exception:

System.SystemException----用于通常由.NET运行库抛出的异常

System.ApplicationException----第三方定义的异常基类

StackOverflowException----分配给栈的内存区域已满,抛出异常

EndOfStreamException----读到文件末尾抛出

OverflowException----如果要在checked环境下数据强制转换错误,就会抛出异常

捕捉异常,示例:

try
{
    // code for normal execution
}
catch
{
    // error handling
}
finally
{
    // clean up
}

用户定义的异常类型,示例:

class SalesSpyFoundException:ApplicationException
{
    public SalesSpyFoundException(string spyName)
    :base("Sales spy found,with name" + spyName)
    {
    }

    public SalesSpyFoundException(
        string spyName,Exception innerException)
    :base(
        "Sales spy found with name" + spyName,innerException)
    {
    }
}
时间: 2024-10-28 10:31:27

C#学习笔记 ----错误和异常的相关文章

python基础教程_学习笔记10:异常

异常 什么是异常 Python用异常对象来表示异常情况.遇到错误后,会引发异常.如果异常对象并未被处理或捕捉,程序就会用所谓的回溯(Traceback,一种错误信息)终止执行: >>> 1/0 Traceback (most recent call last): File "<pyshell#0>", line 1, in <module> 1/0 ZeroDivisionError: integer division or modulo by

JavaScript高级程序设计学习笔记--错误处理与调试

try-catch语句 只要代码中包含finally子句,则无论try或catch语句块中包含什么代码--甚至return语句,都不会阻止finally子句的执行,来看下面这个函数: function testFinally(){ try{ return 2; }catch(error){ return 1; }finally{ return 0; } } 调用这个函数会返回0(PS:但我实际执行的时候会先返回0,再返回2) 抛出错误 与try-catch语句相配的还有一个throw操作符,用于

ARMV8 datasheet学习笔记5:异常模型

1.前言 2.异常类型描述 见 ARMV8 datasheet学习笔记4:AArch64系统级体系结构之编程模型(1)-EL/ET/ST 一文 3. 异常处理路由对比 AArch32.AArch64架构下IRQ 和Data Abort 异常处理流程图对比. 3.1 IRQ 路由 3.1.1.   AArch32 IRQ 路由 图 AArch32 IRQ 路由 3.1.2.    AArch64 IRQ 路由 图 AArch64 IRQ路由 图 AArch64 IRQ向量查找 3.2.     D

Java系列:《Java核心技术 卷一》学习笔记,cchapter11 异常

11.1.1 异常分类     如果一个程序出现了RuntimeException,那么就一定是你的问题. 11.1.2 声明已检测异常 如果子类覆盖了父类的一个方法,那么子类方法中声明的检查异常不能比超类方法中声明的异常更通用. 11.1.4 创建异常类 所有自定义的异常类,都应该实现两个构造函数,一个是默认构造函数:一个是带string参数的构造函数: 11.2 捕获异常 通常来说应该捕获那些知道如何处理的异常,而将那些不知道如何处理的异常继续进行传递. 11.2.1 捕获多个异常 在jav

Python学习_07_错误、异常

地毯式地过语法终于快要结束了... Python中的常见异常 1.NameError:尝试访问一个未初始化的变量 2. ZeroDivisionError:除数为0 3. SyntaxError:Python解释器语法错误 4. IndexError:请求的索引超出序列的范围 5. KeyError:请求一个不存在的字典关键字 6. IOError:输入.输出错误 7. AttributeError:尝试访问未知的对象属性 等,这些错误都是来自于Exception类,Exception类和Sys

【学习笔记】java异常

异常是程序在执行时发生的事件,它会打断指令的正常流程. Java中提供了一种独特的处理异常的机制,通过异常来处理程序设计中出现的错误. Java异常是一个描述在代码段中发生的异常情况(出错)的对象. 引发异常: 在Java程序的执行过程中,如果出现了异常事件,就会生成一个异常对象.生成的异常对象将传递给Java运行时系统,这一异常的产生和提交过程称为引发异常. 分类: JRE(系统)产生异常对象 人为产生异常对象(明确用throw关键字) 异常处理机制: 两种处理例外的机制: 捕获异常(try

JavaScript学习笔记——错误处理

说明:参见<JavaScript高级程序设计>第14章. 一.             错误分类 1. 语法错误 也称为解析错误,发生在传统编程语言的编译时,在JavaScript中发生在解释时,这些错误是由代码中的意外字符直接引起的,然后就不能直接编译/解释,eg,在一行代码因缺少右括号,产生了语法错误.发生语法错误时,就不能继续执行代码.在JavaScript中,只有在同一个线程中的代码会受语法错误的影响.在其他线程中的代码和其他外部引用的文件中的代码,如果不依赖于包含错误的代码,则可以继

学习笔记17_网站异常和日志处理

*在clobal.asax中,写protected void Application_Error() { Respone.Redirect("Default.aspx");//发生错误能在此处添加到日志当中. } *日志类 public class log { public static Queue<string> logString = new Queue<string>(); static Log() { ThreadPool.QueueUserWorkIt

tomcat学习笔记 - 错误日志 - NetBeans配置tomcat出错(转)

转载自:http://blog.sina.com.cn/s/blog_709548200102vgy4.html 问题描述: 新安装的NetBeans8.0.2,安装过程中还一体化安装了内含的Tomcat8.0.15,打开NetBeans运行web工程失败,控制台输出错误信息如下: 启动 Tomcat 失败.*****\build-impl.xml:1164: 部署错误: 启动 Tomcat 失败.有关详细信息, 请查看服务器日志.构建失败 (总时间: 4秒) Tomcat日志显示: '127.