今天在书上看到这样一段话:
ToString()返回的是数据类型名称,而不是数据的字符串表示。想了半天不能理解是什么意思,请明白的人指点一下,最好有个小例子。谢谢了

解决方案 »

  1.   

     // Prints out: "System.Object"
            Object o = new Object();
            Console.WriteLine (o.ToString());返回的是类型名称"System.Object"但是.ToString是个虚方法,可以被重写如
    Int32 i=10;
    Console.WriteLine (i.ToString());
    //返回10而不是"System.Int32",因为.ToString方法在int中被重写了
      

  2.   

    ToString() 可以重写的..具体返回什么的字符串..取决与ToString()方法...
    一般来说 我们建立Class 不重写ToString()方法 那会使用object.ToString()方法...方法里返回类名
      

  3.   

     正如一楼所说,int i;i.tostring()输出是数据的字符串表示.
    他在int里被重写了
      

  4.   


    因为ToString()是Object类的一个虚方法,当你自己创建一个类SubClass(默认从Object继承)而又没有override ToString()方法时,你创建SubClass的实例后,用实例.ToString()返回的就是SubClass的方法全名,如果你在SubClass中重写了ToString();方法,如:
    public override string ToString()
    {
     return "aa";
    }
    那么当然返回的是"aa"串了
      

  5.   

    // Prints out: "System.Object" 
            Object o = new Object(); 
            Console.WriteLine (o.ToString()); 返回的是类型名称"System.Object" 但是.ToString是个虚方法,可以被重写如 
    Int32 i=10; 
    Console.WriteLine (i.ToString()); 
    //返回10而不是"System.Int32",因为.ToString方法在int中被重写了
    对的