public virtual void CalcPay()
Console.WriteLine("Performing Calculations");
class Salaried : Employee
public override void CalcPay()
public override void CalcPay()
public static void Main()
System.Collections.Generic.List<Employee> employee = new System.Collections.Generic.List <Employee>();
employee.Add(new Salaried());
employee.Add(new Hourly());
foreach (Employee s in employee)
((Salaried)employee[0]).CalcPay();
((Hourly)employee[1]).CalcPay();
((Employee)employee[0]).CalcPay();
Employee s1 = new Salaried();
Employee s2 = new Hourly();