C# try catch嵌套
try catch嵌套之后出现异常执行顺序:
static void Main(string[] args)
{
try
{
Console.WriteLine("----------------------外层try------------------------------");
errorMethod();
}
catch (Exception ex)
{
Console.WriteLine("----------------------外层catch" + ex.Message + "------------------------------");
}
finally {
Console.WriteLine("----------------------外层finally------------------------------");
} Console.ReadKey(); } private static void errorMethod()
{
try
{
Console.WriteLine("----------------------内层try------------------------------");
int i = ;
int a = /i;
}
catch (Exception ex)
{
Console.WriteLine("----------------------内层catch" + ex.Message + "------------------------------");
}
finally {
Console.WriteLine("----------------------内层finally------------------------------");
}
}
输出结果:
内层catch处理了异常,所以没有执行外层catch,把内层的catch注释掉,再试下:
static void Main(string[] args)
{
try
{
Console.WriteLine("----------------------外层try------------------------------");
errorMethod();
}
catch (Exception ex)
{
Console.WriteLine("----------------------外层catch" + ex.Message + "------------------------------");
}
finally {
Console.WriteLine("----------------------外层finally------------------------------");
} Console.ReadKey(); } private static void errorMethod()
{
try
{
Console.WriteLine("----------------------内层try------------------------------");
int i = ;
int a = /i;
}
//catch (Exception ex)
//{
// Console.WriteLine("----------------------内层catch" + ex.Message + "------------------------------");
//}
finally {
Console.WriteLine("----------------------内层finally------------------------------");
}
}
输出结果:
总结:try catch嵌套,内层不能捕获时,会考虑外层内否捕获,内层能捕获,则外层catch不执行。
C# try catch嵌套的更多相关文章
- try catch里面try catch嵌套
try catch里能否内嵌try catch?答案是肯定的.但是等内层try catch出异常之后是个什么执行顺序呢?看下面代码 static void Main(string[] args) { ...
- Try Catch 嵌套问题
程序错误 问题描述: 在一个事物中,插入两张表数据,但是第一个成功,第二个失败了,没有起到所谓的事物的功能,这让我百思不得其解 问题所在: 本质上其实报错了,但是错误被吃掉了,具体来说,就是 try ...
- Java代码优化六大原则
单一职责 代码优化第一步,单一职责原则 (Single Responsibility Principle).对于一个Java类,应该仅有一个引起它变化的原因,也就是说,一个类中,应该是一组相关性很高的 ...
- javascript 语句和严格模式(三)
一.语句 javascript程序由语句组成,语句遵守特定的语法规则. block break continue empty if...else switch try catch var functi ...
- 几种创建XMLHttpRequest对象的方法
XMLHttpRequest对象,也就是Ajax交互的核心对象. 这里列举三种创建Ajax对象的方法. 第一种: <!DOCTYPE html> <html> <head ...
- C#入门(2)
C#入门(2) Exception 基本异常的核心成员: System.Exception Property Meaning Data read-only,实现了IDirectory接口的一些键值对, ...
- java中commons-beanutils的介绍
1. 概述 commons-beanutil开源库是apache组织的一个基础的开源库.为apache中很多类提供工具方法.学习它是学习其它开源库实现的基础. Commons-beanutil中包 ...
- Java之Exception
Exception这个东西,程序中必须会有的,尽管我们很不乐意看到它,可是从另一个角度考虑,有异常则说明程序有问题,有助于我们及时改正.有的时候程序出错的原因有很多,比如不合法的输入.类型.空指针甚至 ...
- java中commons-beanutils的介绍(转)
1. 概述 commons-beanutil开源库是apache组织的一个基础的开源库.为apache中很多类提供工具方法.学习它是学习其它开源库实现的基础. Commons-beanutil中包 ...
随机推荐
- 详解linux下的串口通讯开发
串行口是计算机一种常用的接口,具有连接线少,通讯简单,得到广泛的使用.常用的串口是RS-232-C接口(又称EIA RS-232-C)它是在1970年由美国电子工业协会(EIA)联合贝尔系统.调制解调 ...
- js 保留字符串中的关键字前后两个字符其他内容用省略号显示
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- scroll事件实现监控滚动条改变标题栏背景透明度(zepto.js )
今天做了一个类似于手机端京东首页的页面,效果图如下: 刷新页面的时候,标题栏(也就是搜索栏),背景是透明的,当我们往下滑的时候,可以改变标题栏的背景透明度(渐变效果): 当标题栏滑过轮播图后,透明度就 ...
- 【bzoj3684】 大朋友和多叉树 生成函数+多项式快速幂+拉格朗日反演
这题一看就觉得是生成函数的题... 我们不妨去推下此题的生成函数,设生成函数为$F(x)$,则$[x^s]F(x)$即为答案. 根据题意,我们得到 $F(x)=x+\sum_{i∈D} F^i(x)$ ...
- 【BZOJ3625】【codeforces438E】小朋友和二叉树 生成函数+多项式求逆+多项式开根
首先,我们构造一个函数$G(x)$,若存在$k∈C$,则$[x^k]G(x)=1$. 不妨设$F(x)$为最终答案的生成函数,则$[x^n]F(x)$即为权值为$n$的神犇二叉树个数. 不难推导出,$ ...
- Java学习之路(九):Map集合
Map集合概述和特点 Map是属于java.util的一个接口Map<k,v> k:映射所维护的键的类型 v:映射值的类型 Map是将键映射到值的对象.一个映射不能包含重复的键:每个键最多 ...
- 视口(viewport)原理详解之第一部分
在这篇文章中,我将解释viewports和元素width是如何工作的,比如html元素. window和 screen. 这篇文章主要针对桌面浏览器,但它的部分和移动设备中的结论也比较类似,所以也是 ...
- Oracle中的层次查询详解
1 语法格式 select [level], column, expr... from table [where condition] start with condition connect by ...
- 2017年Android百大框架排行榜
框架:提供一定能力的小段程序 >随意转载,标注作者"金诚"即可 >本文已授权微信公众号:鸿洋(hongyangAndroid)原创首发. >本文已经开源到Gith ...
- MySQL查询时区分大小写
在创建MySQL数据库时,下面这些参数可供我们选择:*_bin: 表示的是binary case sensitive collation,也就是说是区分大小写的 *_cs: case sensitiv ...