阅读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