public int Id { get; set; }
public string Name { get; set; }
public char Gender { get; set; }
public DateTime DOB { get; set; }
public double Salary { get; set; }
public EmployeeTax(int id, string name, char gender, DateTime dob, double salary)
public virtual double CalculateTax(){
return (this.Salary/4.5)/100;
public class Employee : EmployeeTax {
public Employee(int id, string name, char gender, DateTime dob, double salary):base(id, name, gender, dob, salary){
public override double CalculateTax(){
return ((this.Gender =='F' && this.DOB.Year > 1992)? (this.Salary/5):(this.Salary/4.5))/100;
public static void Main()
EmployeeTax e1 = new EmployeeTax(1,"Naresh", 'M', new DateTime(1993,06,30),5000);
Console.WriteLine("Employee :"+ e1.Name +" - Tax :"+e1.CalculateTax());
EmployeeTax e2 = new Employee(2,"Kumar", 'F', new DateTime(2010,04,04),5000);
Console.WriteLine("Employee :"+ e2.Name +" - Tax :"+e2.CalculateTax());