Demo : Multi Level inheritance
using System;
class Employee
{
private int empId;
private string empName;
protected int EmpId
{
get { return empId; }
}
protected string EmpName
{
get { return empName; }
}
public Employee(int empId, string empName)
{
this.empId = empId;
this.empName = empName;
}
}
class Trainer : Employee
{
protected int trainingDays;
public Trainer(int empId, string empName, int trainingDays)
: base(empId, empName)
{
this.trainingDays = trainingDays;
}
}
class TechnicalTrainer : Trainer
{
private string technology;
public TechnicalTrainer(int empId, string empName, int trainingDays, string
technology) :
base(empId, empName, trainingDays)
{
this.technology = technology;
}
public void Display()
{
Console.WriteLine("EmpId={0}\nEmpName={1}\nTrainingDays={2}\
nTechnology={3}", EmpId, EmpName, trainingDays, technology);
}
}
class MainClass
{
static void Main(string[] args)
{
TechnicalTrainer obj = new TechnicalTrainer(100, "Nicholas", 100, ".Net");
obj.Display();
Console.Read();
}
}
Output: