2013-01-08 36 views
1

這裏是我的「M應該完成的任務:有麻煩存儲在類的構造函數的數據,學習OOP

編寫模型員工員工有員工編號,姓名,地址的程序,一個名字由一個名字和一個姓氏組成,一個地址由一條街道,一個城市,一個州(2個字符)和一個5位數的郵政編碼組成,一個日期由整數月份,日期和一年。

使用一個Employee類,一類名稱,地址類和Date類的解決方案。

你的程序應該提示用戶輸入d ata爲幾名員工,然後顯示該數據。存儲數據的僱員人數應從命令行輸入。

我很困惑的是如何使用所有不同的類來存儲信息。

這裏是我的代碼(抱歉這個帖子這麼長宕)

//這是實際的輸出碼

//下面是我卡上的構造

public class unitTen 
{ 
int employeeNumber; 

public int Employee (int empNum) 
{ 
    employeeNumber = empNum; 
} 

string employeeName; 

public void Name (string empName) 
{ 
    employeeName = empName; 
} 

string street; 
string city; 
string state; 
int zipCode; 



} 
+1

請顯示代碼和實際問題,或者向老師諮詢澄清。很難知道你應該用什麼來編寫代碼。 –

回答

1

不要把所有東西都放到構造函數中。編寫一個構建器來構建未完全初始化的對象是可以的。你可以組織你的程序如下:

  1. 找出Employee對象有多少會(用戶輸入)
  2. 創建適當長度
  3. Employee對象的數組對於數組中的每個元素,將新的Employee分配給該元素
  4. 對於數組的每個元素,提示用戶輸入正確初始化Employee所需的每條數據。

最後一步(即一次只用一個Employee交易)會分解成很多細節,因爲每個Employee對象有大量的信息。只需系統地瀏覽所有元素。

+0

謝謝你指點我正確的方向。非常感激! –

0

此代碼根本無法編譯。 Yopu已經聲明瞭int作爲返回類型,並且沒有從方法返回任何東西。

public int Employee (int empNum) 
{ 
     employeeNumber = empNum; 
} 
0

除了@Ted指出的答案之外,您應該相應地修改您的Employee類,然後根據您的需要調用構造函數。

public class Employee // you should change the name of class to Employee 
{ 
int employeeNumber; 

public Employee(){}; // default constructor to create empty Employee objects 
public Employee (int empNum) // constructor cannot have any return type 
{ 
    employeeNumber = empNum; 
} 

string employeeName; 

public Employee(string empName, int empNum) // you can create multiple constructors with different parameters. 
{ 
    employeeName = empName; 
    employeeNumber = empNum; 
} 

string street; 
string city; 
string state; 
int zipCode; 

// you can create getters and setters for these fields 

}