多态,将一个对象表现出多种状态;实现多态的三种手段:抽象类,虚方法,接口
public class person
{
string name;
public person(string name)
{
this.Name = name;
}
public string Name
{
get { return name; }
set { name = value; }
}
public virtual void sayhi()//在父类函数返回之前标记为虚方法,在子类函数没返回前加上override
{
Console.WriteLine("我是人类");
}
}
public class Chinese:person
{
public Chinese(string name)
: base(name)
{ }
public override void sayhi()
{
Console.WriteLine("我是中国人,我叫{0}",this.Name);
}
}
public class japan:person
{
public japan(string name):base(name)
{
}
public override void sayhi()
{
Console.WriteLine("我是日本人,我叫{0}",this.Name);
}
}