父类中的虚方法 被子类继承后;
前提条件:父类 new 子类();
子类重写后(override)会执行子类重写
的方法
子类隐藏后(new)会执行父类的方法
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Test
{
class Base
{
public class Person
{
public virtual void Say()
{
Console.WriteLine("say: hello");
}
}
public class People1 : Person
{
public override void Say()
{
Console.WriteLine("say: nihao");
}
}
public class People2 : Person
{
public new void Say()
{
Console.WriteLine("say: sawadika");
}
}
public class People3 : People2
{
public new void Say()
{
Console.WriteLine("say: laosan");
}
}
}
}
static void Main(string[] args)
{
Base.Person p = new Base.Person();
p.Say(); //say hello
Base.Person p1 = new Base.People1();
p1.Say(); //say nihao
Base.Person p2 = new Base.People2();
p2.Say(); //say hello
Base.Person p3 = new Base.People3();
p3.Say(); //say hello
}