我很困惑python中的概念 - 基類覆蓋。我瞭解到,在不同的類中可以有兩個具有相同名稱的不同函數,並且根據對象來自哪個類,將在對象上調用正確的函數。 但是,我剛剛瞭解到超級電話,並且我知道如果您取消(糾正過去時態?),則可以使用該功能。我很困惑,因爲重寫的函數並沒有消失,是嗎?爲什麼我需要使用超級通話「恢復」它?Python類覆蓋
回答
孩子的類型是第一個MRO,所以即使其父母有相同的方法,它的方法也會被調用。 super
在繼承鏈中的下一個鏈接處「重新啓動」MRO,並允許發現屬於父類的屬性。
我不確定MRO是什麼,但我知道你在說什麼。思考一下後,我想我有一個答案(像我這樣的編程新手獲得),誰知道這個更好告訴我,如果這是正確的? 派生類中的對象只能使用派生類中的重寫函數。 ** super **允許對象從基類訪問原始函數。 – 2015-02-06 01:21:49
MRO是我回答中描述的鏈接。 – 2015-02-06 01:22:20
我知道,但我很難理解它,因爲唯一暴露於python的是codeacademy。 – 2015-02-06 01:25:03
- 1. Python:覆蓋基類
- 2. Python類 - 實例被覆蓋?
- 3. 覆蓋內置類(Python)
- 4. Python分覆蓋
- 5. 覆蓋{}在python
- 6. 覆蓋CSS類?
- 7. 覆蓋SASS類
- 8. 覆蓋datagridview類
- 9. 覆蓋類
- 10. 覆蓋類
- 11. 覆蓋css類
- 12. 覆蓋jre_lib類
- 13. 覆蓋css類
- 14. Python:覆蓋(猴子修補)類
- 15. 如何覆蓋python中的類定義?
- 16. Python的覆蓋元類集屬性
- 17. python @property不覆蓋類屬性
- 18. python中覆蓋類的方法
- 19. 覆蓋python中的類變量?
- 20. 覆蓋python類上的__or__運算符
- 21. 如何覆蓋已覆蓋的類
- 22. 覆蓋Python模塊
- 23. Python覆蓋窗口
- 24. 覆蓋python模塊
- 25. 覆蓋覆蓋?
- 26. 覆蓋類的CGridColumn
- 27. 覆蓋JavaFX MediaPlayer類
- 28. 覆蓋類屬性
- 29. 使用@覆蓋類
- 30. Android - 覆蓋android.content.Resources類
此鏈接可能有助於理解Python中的方法解析順序。 http://python-history.blogspot.com/2010/06/method-resolution-order.html – ozgur 2015-02-06 01:11:00