VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • C#教程之c# throw和throw ex

c# throw和throw ex

我们在日常开发当中,经常会用到exception异常,并且我们会在exception中的catch块中throw exception,例如:

1
2
3
4
5
6
7
8
9
10
11
static void M3()
{
    try
    {
    //你的业务代码
    }
    catch (Exception ex)
    {
    throw ex;
    }
}

 

但是大家是否清楚在catch块中 throw和throw ex的区别呢?在一次电话面试中,面试官就问到这个问题了,当时没有答上来,

事后经过测试才知道两者的区别,其实只要自己测试一下,就知道两者之间的区别了,测试代码:

 

1.    throw ex 测试

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
using System;
namespace MuzizMH.Test
{
    class Program
    {
        static void Main(string[] args)
        {
            M2();
        }
 
        static void M1()
        {
            throw new Exception("M1 Exception");
        }
 
        static void M2()
        {
            try
            {
                M1();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
    }
}