有時,當我調用類的.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. Enumerable#sort_by方法是如何工作的?
- 6. setEntity方法是如何工作的Java
- 7. `include?`方法是如何工作的?
- 8. ArrayAdapter getView()方法是如何工作的?
- 9. 「managedObjectContext」方法是如何工作的?
- 10. 這種方法是如何工作的?
- 11. scrolltop()jquery方法是如何工作的?
- 12. toString()不工作
- 13. 如果EditText.getText()。ToString()==「」不工作;
- 14. Java中數組的toString方法如何?
- 15. toString方法
- 16. toString方法
- 17. ToString()方法
- 18. 否toString方法
- 19. ToString方法
- 20. toString方法
- 21. Javascript toString()方法
- 22. ArrayList toString()方法
- 23. toString方法
- 24. 新方法toString()
- 25. 爲什麼我的toString方法不能在Java中工作?
- 26. ToString()方法的意義是什麼?
- 27. 它調用的方法是3.ToString();
- 28. 我的toString()方法不覆蓋日曆toString()方法
- 29. 如何爲ToString創建擴展方法?
- 30. 如何強制HyperJaxb生成toString()方法?
是的,你是對的。 – MarcinJuraszek 2012-04-09 15:44:30
這是什麼問題?這是「我的理解是否正確?」? – 2012-04-09 15:44:58