1

仮想メソッドを持つ基本クラスがあります。そして、このメソッドをオーバーライドする子クラスがあります。次に、子の子がありますが、同じメソッドをオーバーライドするにはどうすればよいですか?'virtual'を2番目のクラスに追加しようとすると、次のメッセージが表示されます:'Overrideメソッドをvirtualとしてマークできません'。'override'を3番目のクラスに追加しようとすると、次のメッセージが表示されます:'これはoverrideに適したメソッドではありません'。

この問題を解決するにはどうすればよいですか?

最初から3番目のクラスを継承できますが、実際には2番目のクラスからいくつかのメソッドが必要です。

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;
        }

ここに画像の説明を入力してください

4

2 に答える 2

6

それをオーバーライドするだけです(「子の子」で)。オーバーライド メソッドは暗黙的に仮想です。

于 2012-12-20T22:04:00.283 に答える
1

すべてoverridden methodsが暗黙のうちに仮想的です。それらをすべてオーバーライドします!!!!

于 2012-12-20T22:06:04.253 に答える