using System;
using System.Collections.Generic;
using System.Text;namespace test
{
    class Program
    {
        static void Main(string[] args)
        {
            Father f=new Father();
            Child c=new Child();
            f = c;
            f.s();
            Console.ReadKey();
        }
        class Father
    {
            public virtual void s()
        {
            Console.WriteLine("我是父类");
        }
    }
        class Child:Father
        {
            public override void s()
        {
            base.s();
         Console.WriteLine("我是子类");   
        }
        }
    }
}    当要调用派生类中重写方法时 f = c;f.s();  这个写法跟直接用派生类的实例c.s();来调用的结果一样啊   我觉得大多数类似的程序书上用的是第一种写法  先把派生类隐式转换成基类  再用基类来调用重写的方法  和第二种写法有什么区别吗?