0
我要實現支持抽象的數字在多重繼承避免鑽石
收集的數據結構是數字集合
分類是一個有序集合
列表是數字列表集合(包括重複)
set是一個沒有dup的數字的集合。
鏈接和陣列是所保存的數據的格式(鏈接在堆意思漫射和陣列意思的存儲器contious量)
再就是類組合(即陣列稱爲ArrayList和等列表。在圖片)
一個簡單的UML:
每個最後四個combinatios的(最後一排PIC)需要實現一個方法調用進行排序,使作爲他們自己的墮落副本(返回Sorted類型)。我想創建4個新的類,從繼承排序和最後一行中的類(例如一個ArrayListSorted繼承自Sorted類和ArrayList類的類),但然後我有鑽石問題(在同一個前排序和ArrayList都是收集後代)
任何更好的主意?
有一個共同的觀點,你應該[喜歡在組成繼承(http://stackoverflow.com/questions/49002/prefer-composition-over-遺產)。但是,根據您的實現語言,鑽石繼承模式不一定是問題。不尋常的,我不知道是否有人已經定義了基類,因爲他們可以,但如果你可以有多重繼承,你應該能夠處理鑽石繼承問題。 – Steve314
爲什麼不只是在Collection類中添加Sorted *參數,每次調用sorted()時都會更新? – lucasg
喬治,事情是,我不寫的主要功能。我被告知,主要他們期望排序後會返回一個Sorted對象 –