CSharp學習筆記之七 異常處理

異常處理的概述:
在C#編程中,我們可以通過異常處理語句對異常進行處理。我們經常使用到的異常處理語句有throw語句、try…catch語句和try…catch…finally語句。

異常處理的方法:
在異常處理中常用throw來進行處理的異常的。其實對於throw來說,他的主要功能就是用來引發一個異常的,然後呢通過cath來捕獲異常。也可以通過throw再次捕捉一個異常,因爲在好的編碼中會在再次引發的異常中添加更多的調試信息,這樣以便用來進行更加的深入的調試工作。
下面給出一個引發異常額例子:
namespace throw語句的應用演示
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("throw語句的應用---除法運算");
            Console.Write("輸入第一個數:");
            double var1 = double.Parse(Console.ReadLine());
            Console.Write("輸入第二個數:");
            double var2 = double.Parse(Console.ReadLine());
            Test te = new Test();
            te.Division(var1,var2);
            Console.ReadLine();
        }
    }
    class Test
    {
        public void Division(double var1, double var2)
        {
            if (var2==0)
            {
                //拋出System.DivideByZeroException異常
                throw new System.DivideByZeroException();
            }
            else
            {
                Console.WriteLine(var1+"/"+var2+"={0}", var1 / var2);
            }
        }
    }
}
然後就是try...cath語句,在大多數情況先,將可能引發異常的數據放在try中,將異常處理的數據放在catch中這樣通過這樣的方式來進行異常的捕獲。
如下所示
try
{
// 可能引發異常的代碼
}
catch(異常類名  異常變量名)
{
// 用於處理異常的代碼
}
還是要通過一個例子來演示異常的捕獲情況。
namespace try_catch使用演示
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                Console.WriteLine("try_catch使用演示");
                Console.Write("請輸入第一個數:");
                string var1 = Console.ReadLine();
                int var2 = Convert.ToInt32(var1);
                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine("捕獲到的異常:{0}", ex);
                Console.ReadLine();
            }
        }
    }
}


還有的方法就是通過try...catch...finally來使用異常的。通過異常的,具體的使用過過程如下所示
try
{
// 可能出現異常的語句
}
catch(異常類名 變量名)
{
// 處理異常的語句
}
……
finally

{
// 總是執行的語句
}

自定義異常:
對於c#來說,用戶可以通過自己來進行自定義異常的。NET框架提供從根基類Exception派生的異常類層次結構,這些類中的每一個都定義了一個特定的異常,因此在很多情況下只需捕獲該異常。如果有特殊需要,我們也可以通過從ApplicationException類派生來創建自己的異常類。創建自己的異常類時,好的編碼做法是在用戶自定義的異常類名的結尾加上“Exception”這個詞。
 
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章