c# - 非直系亲属类的调用方法

标签 c# inheritance

是否可以调用基方法的基? IE。不是派生类的“直接”祖先?

public class a
{
    public virtual void test() { }
}

public class b : a
{
    public override void test()
    {
        //...
        base.test();
    }
}

public class c : b
{
    public override void test()
    {
        //...
        //possible to call test() in  class a, without calling it in class b? 
        //((a)base).test(); //doesnt work

    }
}

最佳答案

不,那是不可能的,并且违反了 OOP 原则。如果您需要这样做,您的系统设计可能有误。

关于c# - 非直系亲属类的调用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12457205/

相关文章:

C# 和 SQL 服务器 : execute stored procedure

c++ - 继承构造函数

python-3.x - __new__、__init__ 和元类(和父类(super class))

c# - VS C# 调试器中看似奇怪的行为

c# - 查找未关闭的FileStream

c# - 安装 .NET 4.5 后的 ClaimsIdentity NullReferenceException

C# 缩短重复代码的更好方法

python - 基本继承(在python中)

delphi - 当我调用基类上的方法时,如何调用后代的实现?

c# - 涉及 List<T> 和对象转换的棘手问题