马上加入IBC程序猿 各种源码随意下,各种教程随便看! 注册 每日签到 加入编程讨论群

C#教程 ASP.NET教程 C#视频教程程序源码享受不尽 C#技术求助 ASP.NET技术求助

【源码下载】 社群合作 申请版主 程序开发 【远程协助】 每天乐一乐 每日签到 【承接外包项目】 面试-葵花宝典下载

官方一群:

官方二群:

C#中try catch finally 讲解

[复制链接]
查看3646 | 回复3 | 2015-1-3 15:26:15 | 显示全部楼层 |阅读模式
try中的程序块是有可能发生错误的程序块,catch中的程序块是当发生错误的时候才会执行的代码块,finally中的程序块是无论是否发生错误都会执行的代码块。

[C#] 纯文本查看 复制代码
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace Sample_01_CA

{

    public class Complex

    {

        static void Main(string[] args)

        {

            int i = 2008;

            int j = 0;

            try

            {

                int result = i / j;

            }

            catch

            {

                Console.WriteLine("J变量的值为0");

            }

            finally

            {

                Console.WriteLine(j.ToString());

            }

            Console.Read();

        }

    };

}



程序输出为:

J变量的值为0

0


[C#] 纯文本查看 复制代码
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

 

namespace Sample_01_CA

{

    public class Complex

    {

        static void Main(string[] args)

        {

            int i = 2008;

            int j = 2;

            try

            {

                int result = i / j;

            }

            catch

            {

                Console.WriteLine("J变量的值为0");

            }

            finally

            {

                Console.WriteLine(j.ToString());

            }

            Console.Read();

        }

    };

}



程序输出为:

2


再说一下,return虽然能跳出整个函数,但是遇到 finally 还是会进 finally的


C#论坛 www.ibcibc.com IBC编程社区
C#
C#论坛
IBC编程社区
44378 | 2015-1-3 20:46:45 | 显示全部楼层
第二段代码输出是2吧?
ibcadmin | 2015-1-4 09:25:45 | 显示全部楼层
44378 发表于 2015-1-3 12:46
第二段代码输出是2吧?

谢谢反馈 , 已编辑
C#论坛 www.ibcibc.com IBC编程社区
C#
C#论坛
IBC编程社区
881966 | 2018-12-4 21:17:37 | 显示全部楼层
谢谢分享
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则