如何在 C# 中將方法標記為已過時?


**已過時特性**用於標記程式碼中的類、方法、屬性、欄位、委託等元素為已過時或廢棄。該特性在編譯時讀取,用於向開發者生成警告或錯誤。

如果我們希望確保程式設計師使用較新版本的方法,此特性可以提供幫助。當我們從舊方法過渡到新方法時,它也使過程更容易。將專案標記為已過時會警告使用者程式元素將在程式碼庫的未來版本中刪除。

此特性位於**System 名稱空間**中。Obsolete 特性透過在程式元素上方加上方括號中的“Obsolete”一詞來修飾程式元素。因為它是一個特性,所以我們可以使用 Obsolete 或 ObsoleteAttribute。

Obsolete 特性具有三個建構函式:

  • [Obsolete] - 這是一個無引數建構函式,是使用此特性的預設方式。

  • [Obsolete(string message)] - 在這種格式中,我們可以得到此方法已過時的訊息。

  • [Obsolete(string message, bool error)] - 在這種格式中,除了訊息之外,我們還可以控制編譯器是否應該在編譯時丟擲錯誤。

示例

using System;
namespace DemoApplication{
   class Demo{
      static void Main(string[] args){
         ObseleteMethod();
         ObseleteMethodWithMessage();
         ObseleteMethodWithMessageAndNoFail();
         ObseleteMethodWithMessageAndFail();
      }
      [Obsolete]
      public static void ObseleteMethod() { }
      [Obsolete("This Method is Deprecated")]
      public static void ObseleteMethodWithMessage() { }
      [Obsolete("This Method is Deprecated", false)]
      public static void ObseleteMethodWithMessageAndNoFail() { }
      [Obsolete("This Method is Deprecated", true)]
      public static void ObseleteMethodWithMessageAndFail() { }
   }
}

輸出

以上程式碼的輸出是

 

更新於:2020年8月4日

4K+ 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.