有时当我调用类的.ToString()方法时,它会返回类的完全限定名.但对于某些类的/ struct(如Int32),它返回一个字符串对应的对象(整数的值).这是否意味着Int32类重写了ToString()方法,并且返回完全限定名称的类不会覆盖它,而只是调用base(Object)的ToString()方法? Object.ToString()实现是否只返回类的完全限定名称?
@R_403_323@
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 theToString
method?
是.
Do other types whose
ToString
methods return the fully-qualified type name not overrideToString
?
情况可能就是这样,是的.当然,他们可以覆盖该方法并使覆盖方法与基类方法完全相同,但这有点无意义.
So in those cases,calling
ToString
just calls theSystem.Object
implementation ofToString
,which returns fully qualified name?
正确.
你似乎已经掌握了它是如何工作的.我唯一的修正是要注意System.Int32是一个结构,而不是一个类.