C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#でのオーバーライドと非表示の違いは何ですか?


メソッドの非表示は、C#ではシャドウイングとも呼ばれます。親クラスのメソッドは、シャドウイングでoverrideキーワードを使用せずに、子クラスで使用できます。子クラスには、同じ関数の独自のバージョンがあります。

オーバーライドでサブクラスタイプに固有の動作を定義します。つまり、サブクラスはその要件に基づいて親クラスメソッドを実装できます。

非表示にするとメソッド全体が再定義され、オーバーライドするとメソッドの実装のみが再定義されます。

オーバーライドでは、子クラスのオブジェクトオーバーライドメソッドを使用して基本クラスにアクセスできます。シャドウイングは子クラスメソッドにアクセスできません。


  1. C#のクラスとオブジェクトの違いは何ですか?

    クラスを定義するときは、データ型の青写真を定義します。 オブジェクトはクラスのインスタンスです。クラスを構成するメソッドと変数は、クラスのメンバーと呼ばれます。 クラスメンバーにアクセスするには、オブジェクト名の後にドット(。)演算子を使用します。ドット演算子は、オブジェクトの名前をメンバーの名前にリンクします。たとえば、 Box Box1 = new Box(); 上に、Box1がオブジェクトであることがわかります。メンバーにアクセスするために使用します- Box1.height = 7.0; メンバー関数を呼び出すためにも使用できます- Box1.getVolume(); 以下は

  2. Pythonセットの演算子とメソッドの違いは何ですか?

    Pythonのsetオブジェクトは、組み込みのsetクラスを表します。和集合、積集合、差、対称差などのさまざまな集合演算は、対応するメソッドを呼び出すか、演算子を使用して実行できます。 メソッドによる結合 >>> s1={1,2,3,4,5} >>> s2={4,5,6,7,8} >>> s1.union(s2) {1, 2, 3, 4, 5, 6, 7, 8} >>> s2.union(s1)  {1, 2, 3, 4, 5, 6, 7, 8} ユニオンバイ|オペレーター >>> s1={1,