c# – .ToString()方法如何工作?

有时当我调用类的.ToString()方法时,它会返回类的完全限定名.但对于某些类的/ struct(如Int32),它返回一个字符串对应的对象(整数的值).这是否意味着Int32类重写了ToString()方法,并且返回完全限定名称的类不会覆盖它,而只是调用base(Object)的ToString()方法? Object.ToString()实现是否只返回类的完全限定名称

解决方法

Sometimes when I call the ToString method it returns the fully qualified name of the runtime type of the object that received the call.

正确.

But for some types,such as system.int32,ToString returns the value of the receiver converted to a string.

正确.

Does the system.int32 struct override the ToString method?

是.

Do other types whose ToString methods return the fully-qualified type name not override ToString?

情况可能就是这样,是的.当然,他们可以覆盖该方法并使覆盖方法与基类方法完全相同,但这有点无意义.

So in those cases,calling ToString just calls the System.Object implementation of ToString,which returns fully qualified name?

正确.

你似乎已经掌握了它是如何工作的.我唯一的修正是要注意system.int32是一个结构,而不是一个类.

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...