class Employee
{
private intage;
private stringname;
public Employee()
{
Console.WriteLine("Employee constructor");
}
public Employee(intage, string name)
{
Console.WriteLine(" Employee constructor with arguments");
this.age= age;
this.name= name;
}
public virtualvoid SayInfo()
{
Console.WriteLine("My name is :" + name + " and I am " + this.age.ToString());
}
}
class Manager:Employee
{
private intage;
private stringname;
public Manager()
{
Console.WriteLine("Manager construtor");
}
public Manager(intage, string name)
{
Console.WriteLine("Manager Constructor with two arguments");
this.age= age;
this.name= name;
}
public overridevoid SayInfo()
{
Console.WriteLine("My name is :" + name + " and I am " + this.age.ToString());
}
static voidMain(string[] args)
{
Employeeemployee1 = new Employee(23,"AAAAAAA");
employee1.SayInfo();
Employeemanager = new Manager(35,"BBBBBBB");
manager.SayInfo();
Managermanager1 = new Manager(12,"CCCCCC");
manager1.SayInfo();
}
}
class Manager:Employee
{
private intage;
private stringname;
public Manager()
{
Console.WriteLine("Manager construtor");
}
public Manager(intage, string name)
{
Console.WriteLine("Manager Constructor with two arguments");
this.age= age;
this.name= name;
}
public void SayInfo()
{
Console.WriteLine("My name is :" + name + " and I am " + this.age.ToString());
}
static voidMain(string[] args)
{
Employeeemployee1 = new Employee(23,"AAAAAAA");
employee1.SayInfo();
Employeemanager = new Manager(35,"BBBBBBB");
manager.SayInfo();
Managermanager1 = new Manager(12,"CCCCCC");
manager1.SayInfo();
子类继承父类的方法 实现多态不覆盖用虚方法出现赋值不确定的问题