這感覺就像這樣一個基本的問題,但這是所有新的給我:的Java:複製的方法
我有一個Person和房類,它們都有項目對象的列表。
public class Person{
private ArrayList<Item> items;
public Person() {
items = new ArrayList<>();
}
public void addItem(){
...
}
public void removeItem(){
...
}
}
public class Room {
private ArrayList<Item> items;
public Room() {
items = new ArrayList<>();
}
public void addItem(){
...
}
public void removeItem(){
...
}
}
項目方法例如addItem()被複制在Room類和Person類中,這不是很好。我考慮製作一個單獨的庫存類,其中包含物品和物品方法列表,然後每個房間和人員都有庫存。
但後來我就沒法如果我使用一個私人庫存外地調用從一個人或房項目的方法。
什麼是停在這裏重複的最好方法?提前致謝!
您可以在委託給清單對象的Person和Room類中創建適當的方法。 – 2014-10-16 21:09:58
您的解決方案似乎是正確的方法。我會說你嘗試實現總體設計模式。也許這些thougts幫助一點點:http://commons.oreilly.com/wiki/index.php/Use_the_Aggregate_Design_Pattern_to_Reduce_Coupling – 2014-10-16 21:30:54