我有一個計劃,正在順利進行中,但我似乎無法總結我的未來圍繞如何某些類添加到容器中。添加多個繼承的對象爲容器類
我創建只是一個2D人物的Java程序。我有一個抽象類BodyPart(所有身體部分共有),DrawablePart和ContainerPart類實現抽象類,其中可繪製部分包括實現的類,如頭部,腿部,腳部等; ContainerParts包含實施的類,如人>上身&下半身。
我已經離開做的唯一部分是創建upperbody並從容器類,其具有BodyParts將陣列派生lowerbody類。
比方說,我的工作LowerBody容器,從ContainerPart的。怎樣纔能有一個LowerBody構造函數可以包含腿和腳的數組(從DrawablePart派生)?我希望LowerBody和UpperBody派生自Container容器,它來自ContainerPart。
我知道這很難得到答案不顯示我的代碼,但我覺得有人可以把它與我從我的課下創建這個UML圖解釋給我聽。
下面是UML圖:
這裏是一個ContainerPart構造與BodyParts將(超是BodyPart的),這是我想要的數組,但我需要某些部分,如腿和在LowerBody的構造腳:
public ContainerPart(String name, String color, int xCoord, int yCoord, BodyPart[] yourParts) {
super(name, color, xCoord, yCoord);
parts = yourParts;
}
以我的容器類我有一個實例字段爲BodyParts將陣列,如在上述的構造看出。但是,當我嘗試使用一個以上的衍生BodyPart的,我得到這個:
但是,如果我只有一個,在超(說「yourFoot」),它會工作。
我在想可繪製的部分應該是一個接口,而不是一個類。 –
這會更有意義,但現在我需要專注於容器部分。 –
它仍然有幫助。當你想到它時,所有東西都應該是一個容器,而且大多數都應該是可繪製的。 –