//virtual修饰方法、属性、索引器或事件
using System;
namespace vitualN
{
class A
{
public virtual void F()
{
Console.WriteLine("A.F");
}
}
class B : A
{
//public void F()//第一回调试,程序会提示隐藏了继承成员A。F(),如果有意隐藏请使用new关键字,程序可运行得:A.F和B.F
//{
// Console.WriteLine("B.F");
//}
//public new void F()//程序可运行得:A.F和B.F
//{
// Console.WriteLine("B.F");
//}
public override void F()//把A中的方法加上了关键字:virtual,程序可运行得:B.F和B.F
{
Console.WriteLine("B.F");
}
}
class Test
{
static void Main()
{
B b = new B();
A a = b;
b.F();
a.F();
}
}
}

浙公网安备 33010602011771号