共用方式為


HOW TO:覆寫 ToString 方法 (C# 程式設計手冊)

更新:2007 年 11 月

C# 中的每個物件都會繼承 ToString 方法,這個方法會傳回代表物件的字串。例如,型別 int 的所有變數都有 ToString 方法,使其能夠以字串的形式傳回本身的內容:

int x = 42;
string strx = x.ToString();
System.Console.WriteLine(strx);

當您建立自訂的類別或結構 (Struct) 時,應該覆寫 ToString 方法,以便提供與型別相關的資訊給用戶端程式碼。

安全性注意事項:

在決定要透過這個方法提供何種資訊時,請考慮類別或結構是否將會由未受信任的程式碼所使用。請確定不會提供任何可讓惡意程式碼利用的資訊。

若要在類別或結構內覆寫 OnString 方法

  1. 宣告具有下列修飾詞 (Modifier) 和傳回型別的 ToString 方法:

    public override string ToString(){}
    
  2. 實作此方法,使其傳回字串。

    下列範例不但會傳回類別的名稱,也會傳回此類別之特定執行個體 (Instance) 所特有的資料。請注意,此範例也會在 age 變數上使用 ToString 方法,以便將 int 轉換為可當做輸出的字串。

    class Person
    { 
      string name;
      int age;
      SampleObject(string name, int age)
      {
      this.name = name;
      this.age = age;
      }
      public override string ToString() 
      {
         string s = age.ToString();
         return "Person: " + name + " " + s;
      }
    }
    

請參閱

概念

C# 程式設計手冊

參考

類別和結構 (C# 程式設計手冊)

new (C# 參考)

override (C# 參考)

virtual (C# 參考)