C#中为什么要重写ToString()方法

 static void Main(string[] args)
        {
            Console.Write(new Student("池海涛", 12));
            //输出的是命名空间名和类名
            Console.Read();
        }
class Student {
        public string name;
        public int age;
        public Student(string name,int age) {
            this.name = name;
            this.age = age;
        }
        //public override string ToString()
        //{
        //    return name + age;
        //}
    }

 这个段代码输出的是命名空间名+类名

Student继承的是object类找到object类的ToString()方法,一切明了

 //
        // 摘要:
        //     返回表示当前 System.Object 的 System.String。
        //
        // 返回结果:
        //     System.String,表示当前的 System.Object。
        public virtual string ToString();

所以为类输出Student的信息就必需从写ToString()方法才能显示对象的信息

原文地址:https://www.cnblogs.com/wohaoxue/p/4190309.html