我們有頂級動物。然後我們有哺乳動物,爬行動物,魚和鳥的亞類。這個亞類的子類是獅子,狗,蛇,蜥蜴,鯡魚,鯊魚,鴿子和鷹。 這都是課程。如果動物是天然的,水或飛行的,而且水生動物有兩種類型:淡水和鹹水,我們需要改變。例如,它們也可以是水和天然的。我想過接口,但也許不好,因爲對於鳥類來說,我們沒有像方法那樣實現什麼。也許我可以使它像動物類中的變量,然後在構造函數中將這個布爾變量。我不確定如何實現這個最好的方法。你可以幫我嗎 ?我如何實現這個層次結構?
-8
A
回答
1
不,你不會爲動物的特徵製造變量,因爲這些特徵不會改變(不考慮進化)。
首先,您需要一本體面的面向對象設計書,而不是要求我們提供幫助。採取主動並做一些研究。
就目前而言,如何只執行一些基本的多態布爾功能,如IsTerrestrial()
,IsAquatic()
等..也許讓一個枚舉AquaticType
返回None
,FreshWater
,SaltWater
或Both
。您可以在最高級別覆蓋這些方法,以便您的子類型不必擔心。
例如,幾乎所有的魚都不是陸地的,所以Fish
的子類不應該實施這種方法(Fish
類應該)。同樣,大多數哺乳動物不是水生的。
這都有點主觀。在類層次結構中有很多方法來表示這些信息,但這應該給你一個開始。
相關問題
- 1. 如何實現這個特定的類層次結構?
- 2. 如何實現調用層次結構
- 3. 實現IVs層次結構
- 4. 如何在實體框架中處理這個層次結構
- 5. Java類層次結構,如何實現整個可選變量
- 6. 實現父子類層次結構
- 7. 類別層次結構的實現
- 8. 實現Backbone.js視圖層次結構
- 9. 在SQL中實現層次結構
- 10. 如何實現這個網站結構?
- 11. 如何在OOP中實現圖形層次結構
- 12. 如何在類層次結構中正確實現Equatable協議?
- 13. 如何實現D3層次結構視圖
- 14. 大數據層次結構 - 如何實現?
- 15. 如何使用集合實現類別層次結構
- 16. 強制接口實現在c#中實現層次結構
- 17. 層次結構
- 18. 在這個表格中,樹的層次結構如何?
- 19. 如何在C++中建模這個父子層次結構?
- 20. 如何將兩個現有列放在層次結構下?
- 21. 如何構建層次結構?
- 22. 我該如何解決這個無效的類加載器層次結構?
- 23. 如何用這個表結構實現MySQL的結果?
- 24. radgridview層次結構
- 25. UIView層次結構
- 26. 類層次結構
- 27. 類層次結構
- 28. Hibernate中的實體層次結構
- 29. 最佳實踐層次結構
- 30. 根據glTF模型層次結構構建器構建實體層次
「Mb」是什麼意思? –
至少提供一些您嘗試過的東西的證據。 –
你沒有什麼可以實現的鳥類? srsy?那麼飛呢?襟翼?飆升? – darijan