ホームページ  >  記事  >  バックエンド開発  >  C# におけるメソッドのオーバーライドとメソッドの非表示の違い

C# におけるメソッドのオーバーライドとメソッドの非表示の違い

WBOY
WBOY転載
2023-09-16 21:01:021541ブラウズ

C# 中方法重写和方法隐藏的区别

C# には、サブクラスを通じて親クラス メソッドの新しい実装を再定義または提供するメカニズムが 2 つあり、これらの 2 つのメカニズムは、メソッドのオーバーライドとメソッドの隠蔽と呼ばれます。メソッドが再実装される方法に基づいて、メソッドを区別できるようになりました。

メソッドのオーバーライドとメソッドの非表示の重要な違いを次に示します。

#シリアル番号キーワードメソッドオーバーライドメソッド非表示1定義メソッドのオーバーライドは、ポリモーフィズムを実現するメカニズムです。親クラスと子クラスは、パラメーターやシグネチャを含む同じメソッドを持ちます。サブクラス オブジェクトで呼び出された場合は、サブクラスの実装を呼び出します。 一方、メソッド隠蔽は、ユーザーが new キーワードを使用して基底クラスまたは親クラスのメソッドを再定義し、それによってその特定のメソッドの基底クラスの主要な基本実装を隠すことができる手法として定義できます。 。 2親クラスの実装へのアクセスメソッドのオーバーライドでは、サブクラスは親クラスのメソッドの実装にアクセスできます。 メソッドの隠蔽では、サブクラス参照を通じて親クラスのメソッドの実装にアクセスできません。 3修飾子の使用法メソッドのオーバーライドでは、override キーワードを使用します。 メソッドの隠蔽では、new キーワードを使用してサブクラスに新しい実装を定義します。 4実装タイプメソッドのオーバーライドでは、メソッドの実装タイプはオブジェクトタイプです。 ただし、メソッドの隠蔽では、メソッドの実装型は参照型になります。 5親クラスからサブクラスへの参照メソッドのオーバーライドで、親クラスの参照変数がサブクラスのオブジェクトを指す場合、サブクラスでオーバーライドされたメソッドを呼び出します。 一方、メソッド隠蔽では、親クラスの参照変数が子クラスのオブジェクトを指している場合、親クラスの隠蔽メソッドを呼び出します。 6目的メソッドのオーバーライドは、メソッドの実装を再定義するだけです。 メソッドの隠蔽により、メソッドを完全に再定義できます。

以上がC# におけるメソッドのオーバーライドとメソッドの非表示の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。