请教问题!
我想知道粗体的地方怎么解释 我看不懂 为什么要加这段代码呢。。
{--------------------编程问答-------------------- 求告知那个地方加粗体了? --------------------编程问答--------------------
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();
}
}
}
private static int number=0;
public Mouse()
{
number++;
}
public override string ToString()
{
return"老鼠"+number;
} --------------------编程问答-------------------- 重写ToString()方法 --------------------编程问答--------------------
为什么呢 有什么用呢!! --------------------编程问答-------------------- (1) static,定义一个静态变量。静态变量的值在这个类的所有成员之间共享,类似全局变量。
(2) 重写 ToString(),首先搞清楚 ToString() 有什么用。比如我们调用 Console.WriteLine(obj);
实际上WriteLine函数内部会调用obj的ToString()方法,产生一个字符串,再输出。再比如,我们在调试的时候,调试窗口也会调用ToString()给出对象的信息。
所以ToString()很有用。默认情况下,系统内置的对象,ToString()都会给出有意义的字符串,比如对于一个整数,将会返回字面数值的字符串,对于一个集合,会列举集合里面元素。但是对于自己写的类,ToString()默认会输出对象的类名。有时候我们希望输出更有意义的信息,就可以重写这个方法。
补充:.NET技术 , C#