static void Main(string[] args) { //creating all types of employees Employee Emp1 = new Employee { FirstName = "Rich", LastName = "Ritchmann", DateHired = new DateTime(1980, 12, 10), EmployeeCode = 1142 }; SalariedEmployee SalEmp1 = new SalariedEmployee { FirstName = "Markov", LastName = "Kasovanovitch", DateHired = new DateTime(1949, 06, 10), EmployeeCode = 0025, AnnualSalary = 10 }; PartTimeEmployee PartEmp1 = new PartTimeEmployee { FirstName = "Pour", LastName = "Pohrgai", DateHired = new DateTime(2018, 04, 26), EmployeeCode = 0026, HourlyRate = .25 }; //displaying employees Emp1.WriteToConsole(); Console.WriteLine(" "); SalEmp1.WriteToConsole(); Console.WriteLine(" "); PartEmp1.WriteToConsole(); Console.WriteLine("\n\n"); //showcasing "override" vs. "new" keywords Employee Emp2 = SalEmp1; Emp2.WriteToConsole(); //will call the overriden method (in this case SalEmp1's WriteToConsole()) Console.WriteLine(" "); Employee Emp3 = PartEmp1; Emp3.WriteToConsole(); //will NOT call the "new" method since it //was initialized as our base class //"Employee", so in this case Employee's WriteToConsole() will run Console.WriteLine(" "); PartTimeEmployee PartEmp2 = PartEmp1; PartEmp2.WriteToConsole(); //will call the "new" method since it //was initialized as our derived class //"PartTimeEmployee", so in this case PartTimeEmployee's WriteToConsole() will run Console.WriteLine(" "); }
static void Main(string[] args) { Employee emp1 = new Employee { FirstName = "Wilhelm", LastName = "Hohenzollern", DateHired = new DateTime(1918, 11, 9), EmployeeCode = "G1888" }; SalariedEmployee emp2 = new SalariedEmployee { FirstName = "Nicholas", LastName = "Romanov", DateHired = new DateTime(1917, 3, 2), EmployeeCode = "R1896" }; emp2.AnnualSal = 186_856; PartTimeEmployee emp3 = new PartTimeEmployee { FirstName = "Charles", LastName = "Habsburg", DateHired = new DateTime(1918, 11, 11), EmployeeCode = "A1916" }; emp3.HourlyRate = 18.87; Console.WriteLine("Displaying emp1"); emp1.WriteToConsole(); Console.WriteLine("\nDisplying emp2"); emp2.WriteToConsole(); Console.WriteLine("\nDisplaying emp3"); emp3.WriteToConsole(); }