public string Name { set; get; }
public string Title { set; get; }
public int Age { set; get; }
public Employee(string n, string t, int a)
public virtual string ShowDetail()
strReturn = Title + ": " + Name;
public double DailyWage {get; set;}
public Staff(string n, string t, int a, double wage) : base(n,t,a)
public double CalculateTotalWage(int nDays, bool bExtraBonus)
double totalWage = nDays * DailyWage;
public double YearlyWage {get; set;}
public Manager() : base()
public Manager(string n, string t, int a, double wage) : base(n, t, a)
public override string ShowDetail()
return Title + " (manager): " + Name;
public double CalculateTotalWage(bool bExtraBonus)
double totalWage = YearlyWage;
public static void Main()
Staff john = new Staff("John", "Specialist", 28, 120);
Console.WriteLine(john.ShowDetail());
double totalWageForJohn = john.CalculateTotalWage(250, true);
Console.WriteLine("Total wage for John: " + totalWageForJohn);
Manager mary = new Manager("Mary", "Manager", 42, 78500);
Console.WriteLine(mary.ShowDetail());
Console.WriteLine(mary.CalculateTotalWage(true));