当前位置:编程学习 > C#/ASP.NET >>

请教问题!






我想知道粗体的地方怎么解释  我看不懂   为什么要加这段代码呢。。

{
    class Program
    {
        static void Main(string[] args)
        {
            Mouse m = new Mouse { cat = new Cat() };
            m.CrySanpSound();
            Console.ReadKey();
        }
    }
    interface ISound
    {
        void CrySanpSound();
    }
    public class Cat : ISound
    {
        public void CrySanpSound()
        {
            Console.WriteLine("抓住了老鼠");
        }
    }
    public class Mouse : ISound
    {
        public Cat cat { get; set; }
        private static  int number=0;
        public Mouse()
        {
            number++;
        }
        public override string ToString()
        {
            return"老鼠"+number;
        }        
        public void CrySanpSound()
        {
            Console.WriteLine("吱吱吱。。");
            cat.CrySanpSound();
        }
    }
}
--------------------编程问答-------------------- 求告知那个地方加粗体了? --------------------编程问答--------------------
引用 1 楼 chuanzhang5687 的回复:
求告知那个地方加粗体了?

        private static  int number=0;
        public Mouse()
        {
            number++;
        }
        public override string ToString()
        {
            return"老鼠"+number;
        } --------------------编程问答-------------------- 重写ToString()方法 --------------------编程问答--------------------
引用 3 楼 itliyi 的回复:
重写ToString()方法

为什么呢  有什么用呢!! --------------------编程问答-------------------- (1) static,定义一个静态变量。静态变量的值在这个类的所有成员之间共享,类似全局变量。

(2) 重写 ToString(),首先搞清楚 ToString() 有什么用。比如我们调用 Console.WriteLine(obj);
实际上WriteLine函数内部会调用obj的ToString()方法,产生一个字符串,再输出。再比如,我们在调试的时候,调试窗口也会调用ToString()给出对象的信息。
所以ToString()很有用。默认情况下,系统内置的对象,ToString()都会给出有意义的字符串,比如对于一个整数,将会返回字面数值的字符串,对于一个集合,会列举集合里面元素。但是对于自己写的类,ToString()默认会输出对象的类名。有时候我们希望输出更有意义的信息,就可以重写这个方法。
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,