2012-05-30 44 views
2

我正在開發一個Java程序,可以跟蹤我的員工工資。有兩種類型的員工,每小時和工資。從循環中的類創建多個對象...我如何引用每個對象?

我有一個while循環詢問輸入和創建對象,以便我可以添加儘可能多或儘可能少的僱員,因爲我想。

當我從類中創建我的對象,我簡單地使用:

HourlyEmployee employee = new HourlyEmployee(type, name, hours, rate); 

但是,如果這是在一個while循環,我將要創建的類類型HourlyEmployee的幾個實例具有相同名稱「僱員」?是否它們具有相同的名稱(我只是想稍後在屏幕上顯示每個員工的信息)。

如果是這樣,我該如何編寫我的代碼,以便每個HourlyEmployee對象的名稱也是動態的?

謝謝!

讓我知道你們是否想要其他的代碼。

回答

5

這樣做的方法是將所有Employee對象放入集合中。

一個好的起點是這個tutorial

+0

收集的方式是多哥.. – foxtrotZulu

+0

感謝您的指導。在我的情況下,Collection會比Array更好地工作。 – Huy

2

是的,您將創建幾個名爲「employee」的HourlyEmployee對象。由於這個問題聽起來有點功課,我不會舉一個例子,但我會建議你研究製作一組HourlyEmployee對象。

+0

是的,這是一個家庭作業問題。謝謝你的提示! :) – Huy

+1

未來,當您在SO上提出作業問題時,您應該使用「家庭作業」標籤。如果你不這樣做,有些人會認爲它是不誠實的,並且會降低你的問題。 – dshapiro

+0

我的歉意。將現在和未來的帖子添加它。 TY。 – Huy

0

試試這個,

  1. 創建一個名爲Employee抽象類,

  2. 然後2具體的類HourlyEmployee和SalaryEmployee。

  3. 使用ArrayList來存儲員工,具有相同的名稱不會產生衝突,但Map會是一個更好的選擇,其中u可以Ids as unique keys識別,即使它們具有相同的名稱的員工。

如:

public void addEmp(Employee employee){ 

ArrayList<? extends Employee> emp; 

while(true){ // Use a boolean variable to terminate the loop at certain conditions 

    for (Employee e : emp) { 

     e.add(employee); 


    } 

}