zoukankan      html  css  js  c++  java
  • c# try..... catch

      功能说明:在此例中,try 块包含对可能导致异常的ProcessString()方法的调用.catch子句包含仅在屏幕上显示消息的异常处理程序,当从ProcessString内部调用throw语句时,系统查找Catch语句并显示Exception caught消息.

        class Try_Test1
        {
            static void processString(string s)
            {
                if (s == null)
                {
                    throw new ArgumentNullException();
                }

            }
            static void Main()
            {
                try
                {
                    string s = null;
                    processString(s);
                }
                catch (Exception e)
                {
                    Console.WriteLine("第二个异常被捕获{0}",e);
                }
                Console.ReadKey();
            }
        }

     此例使用了两个catch语句,最先出现的是最特定的异常被捕获.

     class Try_Test2
        {
            static void processString(string s)
            {
                if (s == null)
                {
                    throw new ArgumentNullException();
                }

            }
            static void Main()
            {
                try
                {
                    string s = null;
                    processString(s);
                }
                catch (ArgumentNullException e)
                {
                    Console.WriteLine("第一个异常被获{0}.", e);
                }
                catch (Exception e)
                {
                    Console.WriteLine("第二个异常被捕获{0}",e);
                }
                Console.ReadKey();
            }
        }

     //异常处理语句——try-finally使用

     //功能说明:在此例中,有一个导致异常的效转换语句,收到一条运行时的错误信息时,Finally语句块还是会执行.

        public class  Finally_Test1
        {
            static void Main()
            {
                int i = 123;
                string s = "string test";
                object o = s;
                try
                {
                    i = (int)o; //转换无效
                }
                catch (Exception e)
                {
                    Console.WriteLine("转换无效");

                }
                finally
                {
                    Console.WriteLine("i={0}", i);//但是finally还是最终会执行。
                }
                Console.ReadKey();
            }

  • 相关阅读:
    【转】如何用一个实例来探讨嵌入式软件架构设计
    【转】虽然话语浅显,还算可以
    【转】嵌入式为什么没有嵌入式软件架构师?
    【转】嵌入式应了解的知识点
    嵌入式核心课程(五大模块)
    Servlet3.0 jsp跳转到Servlet 出现404错误的路径设置方法
    CSS+DIV 设计一个简单的个人网页界面
    DIV+CSS制作二级横向弹出菜单,略简单
    DAO接口及实现类
    JSP 数据库连接类 MySql数据库
  • 原文地址:https://www.cnblogs.com/print/p/3389373.html
Copyright © 2011-2022 走看看