一,C# 中的每個類或結構都隱式繼承 Object 類。因此,C# 中的每個對象都會獲得 ToString 方法,此方法返回該對象的字符串表示形式。而同時在Object 中的ToString是虛方法則可以被重寫。下面是重寫前和后的比較:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace OverToString { class Program { static void Main(string[] args) { Demo d = new Demo("重寫輸出"); Demo1 d1 = new Demo1("原始輸出"); Console.WriteLine(d); //輸出:重寫輸出,重寫ToString之后輸出你重寫的內容 Console.WriteLine(d1); //輸出d1的類型:OverToString.Demo1,就是如果沒有重寫是默認輸出值得類型 } } public class Demo { public Demo(string str) { this.Str = str; } public override string ToString() { return this.Str.ToString(); } public string Str { get; set; } } public class Demo1 { public Demo1(string str) { this.Str = str; } public string Str { get; set; } } }