c# - 在派生类的静态方法中替代 base 关键字以调用基类的重写方法

标签 c# radix

我有以下代码

    class A{
            public void display()
            {
                    Console.WriteLine("In class A");
            }
    }
    class B:A{
            public void display()
            {
                    Console.WriteLine("In class B");
            }
            public static void show()
            {
                    //base.display(); gives error
            }
    }

在上面的代码中base.display();给出错误。我必须在方法 show() 中调用基类方法 display() 而不创建类 A 的对象。我该怎么做?或者我不能这样做?

最佳答案

static 方法不属于实例,因此它没有base。如果 A.display() 也是一个 static 方法,您只能说 A.display()。您也可以说 new A().display() 在调用 display() 后丢弃实例。

关于c# - 在派生类的静态方法中替代 base 关键字以调用基类的重写方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17938747/

相关文章:

c# - 类库中的 IoC。在哪里引导

c# - 从不同的多文件输入中分别获取文件

c# - 基于服务的数据库连接字符串

c++ - 构造函数C++的 super 与子类继承

c# - HTMLAgilityPack - 删除节点而不剥离内部文本

c# - 如何配置 Quartz.net 数据库架构名称?

C++ shared_ptr<Base> 指针访问冲突

字符串联和内存重新分配

c++ - 在基类中调用派生类方法

java - 为什么我们需要 (HEX | OCT)_to_DEC 方法?