小编red*_*red的帖子

从基类调用子类的新方法

我有类似这样的课程

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            A a = new C();

            a.method();
            Console.ReadLine();
        }
    }

    public class A
    {
        public virtual void method()
        {
            Console.WriteLine("METHOD FROM A");
        }
    }

    public class B : A { }

    public class C : B
    {
        public override void method()
        {
            Console.WriteLine("METHOD FROM C");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

它工作正常,打印"METHOD FROM C"

如果我有这样的情况

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            A a = new C(); …
Run Code Online (Sandbox Code Playgroud)

c# methods invoke base-class new-operator

3
推荐指数
1
解决办法
2027
查看次数

标签 统计

base-class ×1

c# ×1

invoke ×1

methods ×1

new-operator ×1