1
拡張メソッドを使用してインタフェースにメソッドを追加する方法については読んでいますが、仮想メソッドを含むインタフェースからベースクラスを派生させない理由も考えていました。最初から設計する柔軟性があります)。基本クラスを使用すると、必要に応じてオーバーライドの柔軟性が向上します。インタフェースエクステンション - ベースクラスまたはエクステンションメソッド
拡張メソッドを使用してインタフェースにメソッドを追加する方法については読んでいますが、仮想メソッドを含むインタフェースからベースクラスを派生させない理由も考えていました。最初から設計する柔軟性があります)。基本クラスを使用すると、必要に応じてオーバーライドの柔軟性が向上します。インタフェースエクステンション - ベースクラスまたはエクステンションメソッド
どちらも利点があります。
基本クラス:
拡張方法:
基本クラスの柔軟性はありません。基本的には、基本クラスを選択するのではなく、基本クラスを拡張する代わりに、この基本クラスを拡張するようにインターフェイスのすべての実装を強制しています。 – BoltClock
クラスを変更できない多くの状況では動作しません...実際の質問は何ですか? –