在Ruby 1.9.2 Core API Reference中,它說Object的父對象是BasicObject。但後來它說BasicObject的父對象是Object。這個怎麼用?這裏發生了什麼?Ruby繼承循環
Q
Ruby繼承循環
2
A
回答
2
這必須是文檔中的錯誤。從概念上講,BasicObject
沒有父母,實際上,這是由其父母代表nil
。 (注:nil
,所述對象,不NilClass
。)
注意,上RubyDoc.Info,它被正確地示出爲具有沒有父。
2
你說得對,Object的父母是BasicObject,但BasicObject的父母不是Object。
Object.ancestors # => [Object, Kernel, BasicObject]
BasicObject.ancestors # => [BasicObject]
相關問題
- 1. PHP繼承循環
- 2. OOP繼承循環
- 3. C++循環繼承和類
- 4. Javascript繼承無限循環
- 5. C++繼承循環依賴
- 6. 繼承我的循環
- 7. 循環繼承接口
- 8. 繼承Ruby Gem?
- 9. Ruby和繼承
- 10. Ruby Socket繼承
- 11. 處理對繼承的循環依賴
- 12. 繼承中的循環檢測
- 13. C++循環依賴和繼承
- 14. IronPython中的繼承和循環引用
- 15. 多級繼承和foreach Java循環
- 16. 繼承中的循環層次結構
- 17. Ruby靜態繼承
- 18. Ruby - 繼承自Array
- 19. Ruby中的繼承
- 20. Ruby:動態繼承
- 21. Ruby可繼承的類宏
- 22. Ruby中的多重繼承
- 23. Ruby獲得繼承類
- 24. Ruby/Sinatra中的繼承
- 25. Ruby gets.chomp和類繼承
- 26. Ruby Datamapper表繼承關聯
- 27. 類繼承和Ruby模塊
- 28. 的Python像Ruby繼承
- 29. Ruby - 繼承方法Order
- 30. 繼續循環
我使用ruby-lang.org的Windows 1.9.2安裝程序安裝了Ruby。在安裝目錄中有一個doc文件夾,帶有一個ruby19-core.chm。這個參考是我看到我的問題的地方。 – 2011-03-10 02:19:19
我沒有該版本的參考。如Jorg寫道,它必須是文檔中的一個錯誤。 – sawa 2011-03-10 05:44:59
@Adam Harte:實際上,這可能是文檔*處理器*中的一個錯誤。正如我在我的回答中所寫,使用[YARD](http://YARDoc.Org/)生成的[RubyDoc.Info](http://RubyDoc.Info/stdlib/core/BasicObject/)很好,所以故障可能在於[RDoc](http://RDoc.RubyForge.Org/)。畢竟,Object和BasicObject的繼承關係實際上並沒有出現在Ruby源代碼中(因爲至少在YARV中生成了CHM文件,它們不具有Ruby源代碼,它們在C中實現),這意味着它們必須以某種方式硬編碼到RDoc內部。 – 2011-03-10 06:31:02