C#特性以前的時候

  C#特性以前的時候,用過C#中的特性,但只是會用,什麼原理,有什麼用這些問題不清楚,今天就騰出時間,學習了一下。

  C#中的特性使用Attribute描述。在使用時,就像是java中的批註一樣。不過C#使用中括號。特性用來描述我們的數據。編譯器能夠識別這些特性,以附加信息的形式存放在生成的元數據中,供clr使用。

  下邊看一個簡單的應用view plainprint?

  static void Main(string[] args)

  { DisplayRunningMsg();DisplayDebugMsg();Trace("方法執行到結尾了!!");Console.Read();

  } [DllImport("User32.dll")] public static extern int MessageBox(int hParent, string msg, string Caption, int type);[Conditional("DEBUG")] private static void DisplayRunningMsg()

  { Console.WriteLine("This is debug");Console.WriteLine("開始運行Main子程序。當前時間是"+DateTime.Now);}

  [Conditional("DEBUG")] [Obsolete] private static void DisplayDebugMsg()

  { Console.WriteLine("該方法已經廢棄啦!!!");}

  DllImport特新允許我們引入一個外部的dll,下邊做一個函數的聲明,我們就可以調用了。

  Conditional屬性表示在該種條件下就執行下邊的代碼 所以[Conditional("DEBUG")]此種標識的方法就只有在調試的時候纔會在執行。 [Obsolete]特性標記該方法已經廢棄。

  運行上述代碼輸出(在debug模式下)

發佈了75 篇原創文章 · 獲贊 2 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章