public void Visit(Employee employee)
 {
     if (employee != null)
     {
         // Provide 10% pay raise
         // The percentage pay raise may be given as a constructor parameter
         employee.Income *= 1.10M;
         Console.WriteLine("{0} {1}'s new income: {2:C}", employee.GetType().Name, employee.Name, employee.Income);
     }
 }
 public void Visit(Employee employee)
 {
     if (employee != null)
     {
         // Provide 3 extra vacation days
         // The number of vacation days may be given as a constructor parameter
         employee.VacationDays += 3;
         Console.WriteLine("{0} {1}'s new vacation days: {2}", employee.GetType().Name, employee.Name, employee.VacationDays);
     }
 }
 public void Detach(Employee employee)
 {
     this.employees.Remove(employee);
 }
 public void Attach(Employee employee)
 {
     this.employees.Add(employee);
 }