[解決済み] C# "オーバーライドする適切なメソッドが見つかりません。" -- しかし、1つだけある
2022-01-29 09:21:53
質問
C#で親クラスのメソッドをオーバーライドするのに苦労しています。親クラスは以下のように設定されています。
public class Base {
public Base(Game1 game)
{
this.game = game;
}
public virtual void Draw()
{
}
}
...そして子クラス。
public class Ext : Base {
public Ext(Game1 game) : base(game)
{
}
public override void Draw(SpriteBatch batch)
{
}
}
過去に親メソッドをうまくオーバーライドしたことがあるのですが、今はおそらく信じられないほど単純なことを見落としているようです...それは何でしょう?
EDITです。 実際のスクリプトでは、ExtはBaseから派生しています。問題はまだ解決していません。しかし、迅速な回答をありがとうございました。)
解決方法は?
あなたのコード(編集後)はうまくコンパイルできます。
チェックすべき点は、すべてがパブリックであるかどうかです。 クラスとメソッドの両方が含まれます。
異なるパラメータでオーバーロード?
本当に
Base
は、あなたが考えているクラスですか?つまり、実際に参照している同名の別のクラスがあるのでしょうか?
編集してください。
コメント中の質問に答えると、異なるパラメーターを持つメソッドをオーバーライドすることはできませんし、その必要もありません。 新しいメソッド(新しいパラメータを持つ)は
override
というキーワードを入力すれば、問題なく動作します。
もし、パラメータを指定しないベースメソッドの呼び出しを禁止したい場合は、そのメソッドに
protected
ではなく
public
. を継承するクラスからのみ呼び出すことができます。
Base
関連
-
[解決済み] [Solved] 1つ以上のエンティティで検証に失敗しました。詳細は'EntityValidationErrors'プロパティを参照してください [重複]。
-
[解決済み】エラー。「戻り値を変更できません」 C#
-
[解決済み】「未割り当てのローカル変数を使用」とはどういう意味ですか?
-
[解決済み] [Entity Framework 4.1でエンティティに関連オブジェクトを追加する際に、エンティティオブジェクトをIEntityChangeTracker.の複数のインスタンスから参照できない。
-
[解決済み] 保護レベルによりアクセス不能になりました。
-
[解決済み】非静的メソッドはターゲットを必要とする
-
[解決済み] UnityでOnCollisionEnterが呼ばれない
-
[解決済み】Visual Studio: 操作を完了できませんでした。パラメータが正しくありません
-
[解決済み】WSACancelBlockingCallの例外について
-
[解決済み] EqualsメソッドがオーバーライドされたときにGetHashCodeをオーバーライドすることが重要な理由は何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】文字列が有効な DateTime " format dd/MM/yyyy " として認識されなかった。
-
[解決済み】取り消せないメンバはメソッドのように使えない?
-
[解決済み】値をNULLにすることはできません。パラメータ名:source
-
[解決済み】OnCollisionEnter2Dが実行されない?
-
[解決済み】Linq 構文 - 複数列の選択
-
[解決済み] ...基礎となる接続は閉じられました。予期しないエラーが受信で発生しました
-
[解決済み】 C# 条件演算子エラー 代入、call、increment、decrement、await、new object 式のみ文として使用可能です。
-
[解決済み] [Solved] .NETでスレッドの終了を待つには?
-
[解決済み】Microsoft.Extensions.LoggingからILoggerを解決することができない
-
[解決済み】名前 'ViewBag' が現在のコンテキストに存在しない - Visual Studio 2015