W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
許多類封裝了非托管資源。
這些類實現(xiàn) System.IDisposable
,它定義了一個名為Dispose的單一無參數(shù)方法來清理這些資源。
using語句提供了一個優(yōu)雅的語法,用于在finally塊中的IDisposable
對象上調(diào)用Dispose。
如下:
using (StreamReader reader = File.OpenText ("file.txt")) { ... }
等效于:
StreamReader reader = File.OpenText ("file.txt"); try { ... } finally { if (reader != null) ((IDisposable)reader).Dispose(); }
異??梢杂蛇\行時或用戶代碼拋出。
在這個例子中,Display將拋出System.ArgumentNullException
:
class Main { static void Display (string name) { if (name == null){ throw new ArgumentNullException ("name"); } Console.WriteLine (name); } static void Main() { try { Display (null); } catch (ArgumentNullException ex) { Console.WriteLine ("Caught the exception"); } } }
您可以捕獲并重新拋出異常,如下所示:
try { ... } catch (Exception ex){ // Log error ... throw; // Rethrow same exception }
System.Exception的最重要的屬性如下:
以下異常類型廣泛用于整個CLR和.NET Framework。
System.ArgumentException
System.ArgumentNullException
System.ArgumentOutOfRangeException
System.InvalidOperationException
System.NotSupportedException
System.NotImplementedException
System.ObjectDisposedException
int
類型定義兩個其兩個版本的Parse
方法:
public int Parse (string input); public bool TryParse (string input, out int returnValue);
如果解析失敗, Parse
拋出異常; TryParse
返回 false
。
您可以通過 XXX
方法調(diào)用 TryXXX
方法來實現(xiàn)此模式,如下所示:
public return-type XXX (input-type input) { return-type returnValue; if (!TryXXX (input, out returnValue)) throw new YYYException (...) return returnValue; }
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: