2013-02-09 59 views
0

我有一個叫做myRestaurant類型的對象,其中包含EmployeesAList,MenuAList和OrdersAList,每個對象都存儲對象Employee,Menu_Item和Order的實例。 Order的每個實例都存儲整數,字符串和整數列表。保存在arraylist中包含arraylists的對象

當我保存myRestaurant時,除了Orders類中的arraylist外,每個arraylist都被保存。

有什麼建議嗎?

保存方法在Runner在餐廳

public boolean SaveToFile(Restaurant myrest) 
{ 
    try 
    { 
     File outFile = new File("etrest.rest"); 
     //creates object representing file 

     FileOutputStream outFileStream = new FileOutputStream(outFile); 
     //connection between program and file 

     ObjectOutputStream outObjectStream = new ObjectOutputStream(outFileStream); 
     //class which is used to pass objects which will be saved to file 

     //Write serializable ArrayList to file 
     outObjectStream.writeObject(myrest);   

     //output done, so close the stream 
     outObjectStream.close(); 
     return true; 
    } 
    catch(IOException IOE) 
    { 
     System.out.println(IOE.toString()); //debug purpose 
     return false;   
    } 
} 

方法添加訂單

ArrayList的OrdersAList =新的ArrayList();爲了類的

public void AddOrder(Order o) 
{ 
    OrdersAList.add(o); 
} 

部分 ArrayList的Menu_ItemsIDAList =新的ArrayList();

public Order() 
{ 
    paid = false; 
    WaiterNo = 0; 
    TableNo = 0; 
    item = 0; 
} 

public Order(boolean pd, int wN, int tN, int it) 
{ 
    paid  = pd; 
    WaiterNo = wN; 
    TableNo = tN; 
    item  = it; 
} 

//MENU ITEMS ENTERED PER ORDER 
public void AddMenu_ItemID(int item) 
{ 
    Menu_ItemsIDAList.add(item); 
} 

當我創造秩序的一個實例,我創建了一個循環來填充Menu_ItemsIDAList

+1

向我們展示我們的代碼。 – MrSmith42 2013-02-09 16:25:12

+1

你如何「保存」你的myRestaurant對象? – Simon 2013-02-09 16:25:36

+0

代碼請問這是太通用的問題 – 2013-02-09 16:26:27

回答

0

我不能確切地重建你的問題......

你/我們應該有一個更好地瞭解那裏你的列表將被完全保存,你的「添加」方法在哪裏?在哪類...

所以我建議你,做一個圖。在你的情況下,一個UML類圖(http://en.wikipedia.org/wiki/Class_diagram)。

一旦你瞭解了類,屬性和關係,那麼你可以繪製這樣一個圖,並且可以以正確的方式使用代碼。

當然,我們可以給你一個快速解決方案,「缺少某些東西」......但對於未來的發展,你應該瞭解面向對象編程的基礎知識。 UML類和UML用例圖也是一個好的開始...

+0

但這個概念是否正確? 即。如果我將數組列表存儲在餐廳中,其中一個數組列表包含一個數組列表,並且我在亞軍中創建一個餐廳實例並從亞軍中保存/加載該餐館實例。當我加載時,訂單的其他屬性被保存;它只是消失的數組列表。 – 2013-02-09 16:56:39