2016-04-26 18 views
-4

Employeeクラスを作成します。データメンバーとして含める項目は、 従業員番号、名前、雇用日、職務説明、部門、 の月給です。このクラスは多くの場合、アルファベットの の全従業員のリストを表示するために使用されます。適切なコンストラクタと プロパティを含めます。 ToString()メソッドをオーバーライドしてすべてのデータを返します メンバー。 Employeeクラスをテストする2番目のクラスを作成します。シンプルなクラスをテストするにはどうすればよいですか?

適切な変数、プロパティ、およびコンストラクタを使用してEmployeeクラスを作成しましたが、2番目のクラスで「テスト」する際に問題があります。私が書いたコードはエラーなく実行されますが、何も表示されません(恐らくテストの目標)。呼び出しセクションでどこが間違っていますか?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 

namespace EmployeeProgram 
{ 
    public class EmployeeProgram 
    { 
     private int employeeNumber; 
     private string name; 
     private string hiredate; 
     private int monthlySalary; 
     private string description; 
     private string department; 

     public employee(int employeeNumber, string name, string dateOfHire, int monthlySalary, string description, string department) 
     { 
      this.employeeNumber = 456; 
      this.name = "Joyce"; 
      this.hiredate = "12/15/14"; 
      this.monthlySalary = 3200; 
      this.description = "Manager"; 
      this.department = "Accounting"; 
     } 

     public int EmployeeNumber 
     { 
      get 
      { 
       return employeeNumber; 
      } 
      set 
      { 
       employeeNumber = value; 
      } 
     } 

     public string Name 
     { 
      get 
      { 
       return name; 
      } 
      set 
      { 
       name = value; 
      } 
     } 

     public string Hiredate 
     { 
      get 
      { 
       return hiredate; 
      } 
      set 
      { 
       hiredate = value; 
      } 
     } 

     public int MonthlySalary 
     { 
      get 
      { 
       return monthlySalary; 
      } 
      set 
      { 
       monthlySalary = value; 
      } 
     } 
     public string Department 
     { 
      get 
      { 
       return department; 
      } 
      set 
      { 
       department = value; 
      } 
     } 
     public string Description 
     { 
      get 
      { 
       return description; 
      } 
      set 
      { 
       description = value; 
      } 
     } 

     public override string ToString() 
     { 
      return "Employee ID: " + employeeNumber + 
        "Employee Name: " + name + 
        "Employee Hire Date: " + hiredate + 
        "Employee Monthly Salary: " + monthlySalary + 
        "Employee Description: " + description + 
        "Employee Department: " + department; 
     } 

     public void Print() 
     { 
      Console.WriteLine(this.ToString()); 
     } 
    } 
} 
+1

を使用することができ、無関係なプログラミング言語をタグ付けしないでください。また、C#を知らなくても、このコードの代わりに[mcve]が必要なように見えます。 –

+0

メインプログラムを教えてください – JSON

答えて

-1

投稿したコードから、どこにでもConsole.WriteLine()を呼び出さないでください。あなたはPrintメソッドを持っていますが、呼び出されるまで実行されません。クラスのインスタンスを作成してから、インスタンスのToStringメソッドをコンソールに書き込むか、インスタンスでPrintメソッドを呼び出す必要があります。この

this.employeeNumber = employeeNumber. 

のようにあなたは、一般的にメンバーに一致するパラメータ名を避ける必要があります

、あなたの従業員のコンストラクタで

Employee someone = new Employee(1, "John", "01/01/2016", 5000, "Engineer", "R&D"); 
Console.WriteLine(someone.ToString()); 
Console.ReadKey(); // Prevent the console from closing 

を行うことができ、メインで

、あなたはおそらく、それがために要求するパラメータを使用する必要があります変数/プロパティ。

あなたのgetおよびsetプロパティで何か特別なことをしないときは、これはC++ではありません自動プロパティ

public int EmployeeNumber { get; set; } 
+0

ありがとう –

関連する問題