有时,当我调用类的.ToString()
方法时,它会返回该类的完全限定名称。但对于某些类的/结构(如Int32
),它会返回一个字符串对象(整数值)的对应字符串。这是否意味着Int32
类会覆盖ToString()
方法,并且返回完全限定名的类不会覆盖它,而只需调用base的(Object
)ToString()
方法? Object.ToString()
实现是否仅返回该类的完全限定名称?.ToString()方法是如何工作的?
回答
有时候,当我打电话的
ToString
方法返回运行时类型接收呼叫的对象的全名。
正确。
但是对于某些类型,如
System.Int32
,ToString
则返回接收器转换为字符串的值。
正确。
System.Int32
结构覆盖ToString
方法吗?
是的。
做其他类型的,其
ToString
方法返回完全限定的类型名称不覆盖ToString
?
可能是这样的,是的。当然,他们可以重写该方法,并且重写方法与基类方法完全相同,但是这样做有点没有意义。
在这些情况下因此,呼吁
ToString
只是调用System.Object
实施ToString
,它返回完全合格的名字吗?
正确。
您似乎对这是如何工作有一个牢固的把握。我唯一的修正是注意System.Int32
是结构,而不是类。
你甚至试图寻找你的问题的答案?
http://msdn.microsoft.com/en-us/library/system.object.tostring.aspx
的ToString是在.NET Framework的主要格式化方法。它 将对象转换为其字符串表示,以便它适合显示 。 (有关在.NET框架 格式化支持的信息,请参见格式化类型。)
ToString方法的缺省的实现返回对象的类型的完全 限定名,如下面的示例 所示。
因为对象是基类在.NET框架 所有引用类型的,这种行为是通过引用类型的不 重写ToString方法继承。以下示例说明了这一点。 它定义了一个名为Object1的类,该类接受所有Object成员的默认 实现。它的ToString方法返回对象的完全限定类型名称 。
有关C#中的ToString()方法的几点。
ToString()方法在基类System.Object类中定义,因此它可用于所有要使用的类型和参数。
由system.object基类提供的ToString()的默认实现将为您提供包括名称空间的类型的完整名称。
如果您不想使用默认实现,那么您可以重写ToString()方法。是ToString()方法是可覆盖的。你在哪里覆盖它?您可以在不希望其默认实现的类中覆盖它。
- 1. toString方法如何工作?
- 2. toString方法如何
- 3. toString()不工作
- 4. model_path()方法是如何工作的
- 5. SqlGeography.Reduce方法是如何工作的?
- 6. setEntity方法是如何工作的Java
- 7. scrolltop()jquery方法是如何工作的?
- 8. 如何覆盖C#中的ToString()方法?
- 9. Javascript toString()方法
- 10. 新方法toString()
- 11. toString方法
- 12. toString方法
- 13. ToString()方法
- 14. ToString方法
- 15. 否toString方法
- 16. 如何在Java中使用toString方法?
- 17. 如何为ArrayList编写toString方法?
- 18. 理解tostring()方法?
- 19. 重载ToString方法
- 20. toString方法在链接列表实现不工作在js
- 21. params方法如何工作?
- 22. distanceFromLocation方法如何工作?
- 23. 该方法如何工作?
- 24. getContentResolver()方法如何工作?
- 25. BuildSiteMap()方法如何工作?
- 26. 工作方法如何GetFormat
- 27. ToString()方法是否违反SRP?
- 28. 异常递归是.ToString方法吗?
- 29. 覆盖toString()方法的Java
- 30. 简单的toString()方法
是的,你是对的。 – MarcinJuraszek 2012-04-09 15:44:30
这是什么问题?这是“我的理解是否正确?”? – 2012-04-09 15:44:58