异常处理


->异常的类型
 try-catch   ;  try-catch-finally  ;  try-finally
 
在类方法中异常处理的过程是:
   *异常抛给调用它的方法!
   *如果该方法没有处理异常,就再往上抛,
   *如果做了异常处理就不再往上抛了
   
实例:

   class Program
    {
        static void Main(string[] args)
        {
            try
            {
                Func1();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            Console.ReadKey();
        }
        public static void Func1()
        {
            // 如果该方法中用到一个资源需要被回收
            try
            {
                Func();
            }
            //此段如果不注释掉,异常信息由Func1自己处理
                //如果注释掉,异常信息交由调用函数处理
            //catch (Exception ex)
            //{
            //    Console.WriteLine(ex.Message + "   自己处理");
            //}
            finally
            {
                Console.WriteLine("释放资源");
            }
        }
        public static void Func()
        {
            throw new Exception("Func 异常信息 ");
        }        
    }
}

 异常处理时,应该注意的问题:
-> try代码中一旦异常,其后代码不再执行
-> finally总会执行
-> finally中不能有return语句(此处上次出错,想在finally中返回出错信息,现在仔细一想,哎!)
-> 即使try中有return,finally中的代码也会执行

原文地址:https://www.cnblogs.com/dedeyi/p/2570451.html