當我更改虛擬方法的簽名時,它經常發生,繼承類變得抽象。這可能會導致(容易混淆的)錯誤消息顯然完全不相關(原始更改)位置。在這些消息的某處,我讀了「Foo是抽象的」。但解析這些錯誤信息是很乏味的。有沒有辦法強制一個類是而不是抽象?確保一個類不是抽象的
4
A
回答
8
您可以使用override
specifier指定派生類中的方法重寫基類中的抽象方法。當您更改基類中方法的簽名時,override
指定的方法應該會導致清除編譯器錯誤,因爲它不再覆蓋基類方法。
相關問題
- 1. 一個抽象類
- 2. dojo中的domConstruct是一個抽象類
- 3. 如何確定一個對象是否從一個抽象的通用類
- 4. 一個抽象類繼承另一個抽象類問題
- 5. 傳遞一個抽象類而不是java中的對象?
- 6. 抽象類是否應該至少有一個抽象方法?
- 7. 爲什麼ClassLoader是一個抽象類?
- 8. 確定哪些是延長一個抽象類
- 9. 由另一個抽象類和非抽象類繼承抽象類
- 10. 不能分配抽象類型的對象 - 但類不是抽象的! (C++)
- 11. 從另一個抽象類的PHP抽象類屬性
- 12. 抽象類的方法覆蓋另一個抽象類
- 13. 擴展另一個抽象類的php抽象類
- 14. 錯誤:類不是抽象的,不重寫抽象方法
- 15. 參數類型可能不是指一個抽象類型
- 16. 類型是一個接口或抽象類,不能實例化
- 17. 不是抽象的,不重寫抽象
- 18. iPhone - 一個抽象類
- 19. 獲取一個抽象類
- 20. 如何創建一個抽象的類,但不是內部的
- 21. 爲什麼HttpContext是一個抽象類而不是接口?
- 22. 爲什麼IDisposable是一個接口,而不是抽象類?
- 23. 爲什麼java.sql.Statement是一個接口而不是抽象類?
- 24. 什麼是CI_Controller built_in類?不管它是抽象的還是不抽象的?
- 25. 在我上有一個抽象類的現有庫擴展一個抽象類
- 26. 一個具體的類VS抽象類
- 27. JAXB生成的抽象類不是抽象的
- 28. 正確使用抽象類
- 29. 不能實例化抽象類,因爲成員是抽象的
- 30. 哪一個是抽象類? Oracle考試的一個問題
設計更改通常會產生大波紋。您應該儘早穩定界面,以避免此類問題。 –