zoukankan      html  css  js  c++  java
  • C#3.0学习笔记(3)异常处理程序try catch语句

    一,  什么叫异常?

           异常就是程序运行时的错误,它违反了一个系统约束或应用程序约束,或出    现了在正常操作时未预料的情形。如用0去除一个数时就会发生异常。

    二,  try…catch…finally…语句的结构?

           未例:

           try

           {

                  Statement;

           }

           catch(…)

           {

                  Statement;

           }

           finally

           {

                  Statement;

           }

    1、 try块包括正被异常保护的代码。

    2、 catch块是处理异常的代码块,也称异常处理程序。

    3、 finally块是在所有情况下无论如何都要执行的代码,无论有没有异常发生。

    三,  综合示例:

           namespace try_catch

    {

        class Program

        {

            static voidMain(string[] args)

            {

                MyClass mc = new MyClass();

                try

                {

                    mc.A();

                }

                catch (DivideByZeroException)

                {

                    Console.WriteLine("catch clause inMain()");

                }

                finally

                {

                    Console.WriteLine("finally clause inMain()");

                }

                Console.WriteLine("After try statement inMain.");

                Console.WriteLine("   --keep running!");

            }

        }

        class MyClass

        {

            public void A()

            {

                try

                {

                    B();

                }

                catch (System.NullReferenceException)

                {

                    Console.WriteLine("catch clause in A()");

                }

                finally

                {

                    Console.WriteLine("finally clause in A()");

                }

            }

            protected void B()

            {

                int x = 10, y = 0;

                try

                {

                    x /= y;

                }

                catch (System.IndexOutOfRangeException)

                {

                    Console.WriteLine("catch clause in B()");

                }

                finally

                {

                    Console.WriteLine("finally clause in B()");

                }

            }

        }

    }

    程序输出结果为:

    finally clause in B()

    finally clause in A()

    catch clause inMain()

    finally clause inMain()

    After try statement inMain.

       --keep running.

  • 相关阅读:
    for循环中创建线程执行问题
    MySQL学习总结之路(第六章:表类型【存储引擎】的选择)
    Tensorflow的下载和安装
    C# 和 Python 的 hash_md5加密方法
    MySQL学习总结之路(第五章:函数)
    MySQL学习总结之路(第四章:运算符)
    MySQL学习总结之路(第三章:数据类型)
    MySQL学习总结之路(第二章:表)
    MySQL学习总结之路(服务与数据库管理)
    CSS居中的方式15种(水平垂直)
  • 原文地址:https://www.cnblogs.com/mcgrady/p/2228853.html
Copyright © 2011-2022 走看看