閱讀541 返回首頁    go 阿裏雲 go 技術社區[雲棲]


為什麼要override ToString()方法——讀《你必須知道的.net》

 

System.Object 是所有類型的基類,任何類型都直接或間接繼承自 System.Object 類。沒有指定基類的類型都默認繼承於 System.Object。

 

我們選擇 Object 的ToString()方法來分析其實現

 

public virtual string ToString()

{
    return this.GetType().FullName.ToString();
}

 

可見,默認情況下,對象調用 ToString方法將返回類型全名稱,也就是命名空間加類型名全稱。

 

在通常的情況下,ToString方法提供了在子類中重新覆寫基類方法而獲取對象當前值的字符串信息的合理途徑。例如,下麵的類型MyLocation將通過 ToString方法來獲取其坐標信息:

 

class MyLocation
{
    private int x = 0;
    private int y = 0;
    public override string ToString()
    {
        return String.Format("The location is ({0}, {1}).", x, y);
    }

}

最後更新:2017-04-02 22:16:00

  上一篇:go Java——1、2、3、4能組成多少無重複數字的三位數
  下一篇:go readonly和const