try catch 学习记入
执行过程
public void method(Action action)
{
//2.method执行中
try
{
action(); //3.调用委托
string x = ""; //如果action执行时出现了error,但是内部有catch机制并且没有继续throw出来,那么这里"会"执行
}
catch (Exception ex)
{
//8.捕获error
string x = ex.Message; //如果action执行时出现了error,但是内部有catch机制并且没有继续throw出来,那么这里"不会"执行
}
}
protected void Page_Load(object sender, EventArgs e)
{
try
{
//1.调用method函数,并且传入委托
method(delegate()
{
//4.执行委托函数
try
{
throw new Exception("x"); //5.error 出现
}
catch (Exception ex)
{
string x = ex.Message; //6.捕获error
throw ex; //7.把error传递下去 (如果没有把error传递,那么外部的catch就不会触发了)
}
});
string xyx = "z"; //9.因为method函数中的catch没有在throw所以会执行这里
}
catch (Exception ex)
{
string x = ex.Message;
}
finally
{
//10 finally 一定会执行!
}
}
重点 catch有没有继续throw, finally一定会执行
自定义catch
只要一个类继承了System.Exception 它就可以作为一个catch , 可以被throw
一个try 可以有多个 catch(不同的Class处理)
简单的说 throw new someClass 就是丢一个对象,new someClass()可以像普通的实例化一样,写一些初始化等等。
catch 捕获到的就是这个对象,就是一般的对象咯,一样可以调用属性或者方法等等。
public class MyEx : System.Exception
{
public MyEx() : base() { }
public MyEx(string message, Exception innerException) : base(message, innerException) { }
public MyEx(Int64 number) //初始化
{
this.number = number;
}
public Int64 number { get; set; }
} protected void Page_Load(object sender, EventArgs e)
{
try
{
throw new MyEx();
}
catch (MyEx ex)
{
Int64 z = ex.number; //调用公有属性
}
catch (Exception ex)
{
string x = ex.Message;
}
finally
{
//10 finally 一定会执行!
}
}
try catch 学习记入的更多相关文章
- MySQL用source命令导入不记入binlog中【原创】
试验环境,MySQL主主复制 主库10.72.16.112 从库10.72.16.50 一直有个疑问,利用sql_log_bin=0可以临时在客户端停止将操作记入binlog中,如果使用source命 ...
- Linux History安全问题【保存记录防止删除】+完善Linux/UNIX审计 将每个shell命令记入日志
2011-09-27 22:11:51| 分类: rhel5_033|举报|字号 订阅 Linux利用PROMPT_COMMAND实现审计功能 这个系统审计,记录什么用户,在什么时间,做 ...
- 洛谷 P3387 【模板】缩点 DAGdp学习记
我们以洛谷P3387 [模板]缩点 来学习DAGdp 1.这道题的流程 //伪代码 for i->n if(i未被遍历) tarjan(i) 缩点() DAGdp() 完成 首先tarjan这部 ...
- MMM 数位dp学习记
数位dp学习记 by scmmm 开始日期 2019/7/17 前言 状压dp感觉很好理解(本质接近于爆搜但是又有广搜的感觉),综合了dp的高效性(至少比dfs,bfs优),又能解决普通dp难搞定的问 ...
- MMM 状压dp学习记
状压dp学习记 by scmmm 开始日期 2019/7/17 前言 状压dp感觉很好理解(本质接近于爆搜但是又有广搜的感觉),综合了dp的高效性(至少比dfs,bfs优),又能解决普通dp难搞定的问 ...
- 【ABAP系列】SAP 读取生产订单 记入文档的货物移动明细
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP 读取生产订单 记入文档的 ...
- php自定义错误处理和try{}catch(){}学习
<?php //语法错误 //运行时的错误 //逻辑错误 //php的错误报告级别 // display_errors; // ini_set("display_errors" ...
- AspectJ的拓展学习--织入顺序和通知参数指定
前言: 其实spring的aop非常的强大, 因此研究一下AspectJ还是有必要, 而不是仅仅停留在初级的阶段. 比如spring的事务是基于aop来实现的, 如果不能深入的研究, 可能很多知识点, ...
- Kubernetes探索学习004--深入Kubernetes的Pod
深入研究学习Pod 首先需要认识到Pod才是Kubernetes项目中最小的编排单位原子单位,凡是涉及到调度,网络,存储层面的,基本上都是Pod级别的!官方是用这样的语言来描述的: A Pod is ...
随机推荐
- 《Linear Algebra and Its Applications》-chaper2-矩阵的逆
矩阵的逆: 逆矩阵的定义: 类比于我们在研究实数的时候回去讨论一个数的倒数,对应的,在矩阵运算中,当AB = I的时候,A,B互称为逆矩阵,这里的I类似实数中的1,表示单位矩阵,即对角线是1其余位置是 ...
- mysql二进制
1. 从http://www.mysql.com下载二进制版的Mysql安装包 //这个MYSQL是二进制版的,不用编译 Linux (x86) 5.0.41 59 ...
- L - Cat VS Dog - HDU 3829(最大独立集)
题意:有P个孩子,有的孩子喜欢猫不喜欢狗,有的喜欢狗不喜欢猫(喜欢的和不喜欢的一定是相相对立的动物),动物园有N只猫,M只狗,每个孩子都有喜欢的猫讨厌的狗(或者喜欢的狗讨厌的猫),现在动物园要送走一批 ...
- Photography theory: a beginner's guide(telegraph.co.uk)
By Diane Smyth, Tim Clark, Rachel Segal Hamilton and Lewis Bush 11:00AM BST 09 Jun 2014 Have you r ...
- 关于Web Api的HelpPage文档注释问题
之前使用Microsoft.AspNet.WebApi.HelpPage的时候,一直为返回对象的注释发愁,以为这是个BUG. 这个注释的解决办法其实要从其原理理解就明白了. 因为HelpPage是读取 ...
- ndroid调用平台功能具体技巧分享
Android操作系统那个可以通过调用手机平台来实现一些特定的功能,诸如网页的显示,邮件的发送等等.那么今天就为大家总结了几个Android调用平台功能的应用技巧,帮助大家增加编程经验. Androi ...
- [Java] Tcp/udp 简单通信
本文转自 我自己的博客guozeyiblog.cn 欢迎来訪 效果图: //UDP通信 import java.awt.*; import java.awt.event.ActionEvent; i ...
- C primer plus 读书笔记第三章
本章的标题是数据和C,主要内容是介绍数据类型中的整数类型和浮点数类型. 本章的第一段代码 #include <stdio.h> int main(void) { float weight; ...
- iPhone 各版本屏幕分辨率
参考:http://www.paintcodeapp.com/news/iphone-6-screens-demystified
- 阿里云linux的nginx下面配置多站点
假设有服务器ip为 114.214.85.35 域名1为 www.jieshendada.cn 域名2为 www.jieshenxiaoxiao.cn 1.首先打开nginx域名配置文件存放目录:/ ...