如何覆盖非虚方法?

Ale*_*xan 1 c# virtual inheritance overriding

我有虚拟方法的基类.我有子类,它已覆盖此方法.然后我有孩子的孩子,但我怎么能覆盖相同的方法?如果我尝试将"虚拟"添加到第二类,我会收到消息:"覆盖方法不能标记为虚拟".如果我尝试将"覆盖"添加到第三类,我会得到消息:'这不是适合覆盖的方法'.

如何解决这个问题?

我可以从头开始继承第三类,但实际上我想从第二类中获得一些方法.

public virtual T Save (T entity)
        {
            //removed code

            return entity;
        }

public override T Save(T entity)
        {
            //removed code

            return entity;
        }

 public T Save(T entity)
        {
            return entity;
        }
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

Kir*_*oll 6

只是覆盖它(在"孩子的孩子").覆盖方法是隐式虚拟的.