public class Person
{
protected string id;
protected string name;
public string ID
{
get { return id; }
set { id = value; }
}
public string Name
{
get { return name; }
set { name = value; }
}
public virtual void input()
{
Console.Write("编号");
ID = Console.ReadLine();
Console.Write("姓名");
Name = Console.ReadLine();
}
public virtual void display()
{
Console.WriteLine("编号:{0}", ID);
Console.WriteLine("姓名:{0}", Name);
}
}
public class Student:Person
{
private string sclass;
private int cscore;
public string SClass
{
get { return sclass; }
set { sclass = value; }
}
public int CScore
{
get{return cscore;}
set {cscore =value ;}
}
public override void input()
{
base.input();
Console.Write("班级:");
SClass=Console .ReadLine();
Console .Write("成绩");
CScore=Convert .ToInt32(Console .ReadLine());
}
public override void display()
{
base.display();
Console.WriteLine("班级:{0}\n成绩:{1}",SClass,CScore);
}
}
public class Teacher:Person
{
private string jobtitle;
private string department;
public string JobTitle
{
get{return jobtitle;}
set {jobtitle=value;}
}
public string Department
{
get {return department ;}
set {department =value ;}
}
public override void input()
{
base.input();
Console.Write("职称:");
JobTitle =Console.ReadLine();
Console.Write("部门:");
}
public override void display()
{
base.display();
Console.WriteLine("职称:{0}\n部门:{1}",JobTitle,Department);
}
}
class Program
{
static void Main(string[] args)
{
Student stu = new Student();
Console.WriteLine("输入一个学生数据:");
stu.input(); //调用Student子类中重写的输入方法
Console.WriteLine();
Teacher tec = new Teacher();
Console.WriteLine("输入一个教师数据:");
tec.input(); //调用Teacher子类中重写的输入方法
Console.WriteLine();
Console.WriteLine("显示一个学生数据:");
stu.display();//调用Student子类中重写的输出方法
Console.WriteLine();
Console.WriteLine("显示一个教师数据:");
tec.display();//调用Teacher子类中重写的输出方法
Console.ReadLine();
}
}