public string Name { set; get; }
public string Title { set; get; }
public int Age { set; get; }
public Employee(string n, string t, int a)
public string ShowDetail()
strReturn = Title + ": " + Name;
public class Staff : Employee
public double DailyWage { get; set; }
public Staff(string name, string title, int age, double dailywage)
public double CalculateTotalWage(int nDays, bool bExtBonus)
double totalwage = nDays * DailyWage;
totalwage += (Age > 60) ? 1000 : 500;
public class Manager : Employee
public double YearlyWage { get; set; }
public Manager(string name, string title, int age, double yearlywage)
public new string ShowDetail()
stroutput = Title + "(manager): " + Name;
public double CalculateTotalWage(bool bExtBonus)
return bExtBonus ? (YearlyWage + 3000) : YearlyWage;
public static void Main()
Staff staff1 = new Staff("John", "Specialist", 28, 120);
Console.WriteLine(staff1.Name);
Console.WriteLine(staff1.Title);
Console.WriteLine(staff1.ShowDetail());
Console.WriteLine(staff1.CalculateTotalWage(120, true));
Manager manager1 = new Manager("Mary", "Manager", 42, 78500);
Console.WriteLine(manager1.ShowDetail());
Console.WriteLine(manager1.CalculateTotalWage(true));