[解決済み] C#のoverrideとnewキーワードの違いは何ですか?
2023-05-22 16:31:29
質問
の違いは何ですか?
override
と
new
というキーワードは、C#でクラス階層にメソッドを定義する際に使用されるのでしょうか?
どのように解決するのですか?
次のページが、ご質問の内容をうまくまとめています。
概要
オーバーライド : ベースクラスのメソッドが派生クラスでオーバーライドされた場合、呼び出したコードがオブジェクトが派生クラスのインスタンスであることを知らなくても、派生クラスのバージョンが使用されます。
新しい : overrideの代わりにnewキーワードを使用すると、派生クラスのメソッドは基底クラスのメソッドをオーバーライドするのではなく、単に非表示にするだけです。
newもoverrideも指定しない場合、結果の出力はnewを指定した場合と同じですが、コンパイラの警告も表示されます(ベースクラスのメソッドを隠していることに気づいていない、または実際にオーバーライドしたかったのに単にキーワードを入れ忘れた可能性があるため)。
オーバーライド : ベースクラスのメソッドの virtual/abstract/override タイプで使用されます。
新しい : ベースクラスがメソッドを virtual/abstract/override として宣言していない場合。
関連
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] staticmethodとclassmethodの違いについて
-
[解決済み] C#の正しいバージョン番号を教えてください。
-
[解決済み] .NETでのdecimal, float, doubleの違い?
-
[解決済み] どのような場合に '$this' よりも 'self' を使うべきですか?
-
[解決済み] インターフェースと抽象クラスの違いは何ですか?
-
[解決済み] 抽象メソッドと仮想メソッドの違いは何ですか?
-
[解決済み] C#のconstとreadonlyの違いは何ですか?
-
[解決済み] パブリック、プライベート、プロテクトの違いは何ですか?
-
[解決済み] Pythonの旧スタイルのクラスと新スタイルのクラスの違いは何ですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】プログラム実行中に1秒待つ
-
[解決済み] メンバー '<メンバー名>' にインスタンス参照でアクセスできない
-
[解決済み] 'SubSonic.Schema .DatabaseColumn' 型のオブジェクトをシリアライズする際に、循環参照が検出されました。
-
[解決済み】プロジェクトビルド時のエラー。エディタでスクリプトにコンパイルエラーがあるため、Playerのビルドにエラーが発生する
-
[解決済み】Swashbuckle/Swagger + ASP.Net Core: "Failed to load API definition" (API定義の読み込みに失敗しました
-
[解決済み】"指定されたパスのフォーマットはサポートされていません。"
-
[解決済み】Linq 構文 - 複数列の選択
-
[解決済み】画像のペイントにTextureBrushを使用する方法
-
[解決済み】プロセスが実行されているかどうかを知るには?
-
[解決済み] 「非表示が意図されている場合は新しいキーワードを使用する」警告