C#の仮想メソッドについて読みました。C#に仮想クラスと呼ばれる概念はありますか?C#の抽象クラスとC ++の仮想クラスは同じですか?
21854 次
3 に答える
19
C#にはそのようなことはありません。複数の実装の継承はサポートされていないため、実際には必要ありません。クラスを抽象化するということは、実際にはそのクラスのインスタンスを作成できず、完全に実装されていない可能性があることを意味します(たとえば、抽象メソッドが含まれている可能性があります)。
于 2013-02-27T04:21:01.790 に答える
7
C#には仮想クラスはありません。抽象クラスをインスタンス化できないため、抽象クラスは同じではありません。
封印されたものにマークを付けることで、仮想的なものにマークを付けるのとは逆のことができます。これにより、継承されなくなります。
于 2013-02-27T04:26:32.037 に答える
3
私はこの以前のSO投稿へのリンクで意見を述べます:C ++では仮想基本クラスとは何ですか?
他の人が述べているように、C#には多重継承がないため、多重継承を制限する「仮想基本クラス」を持つ必要はなく、C#には適用されません。仮想化できるのはC#のメンバーのみです。
于 2013-02-27T04:53:42.610 に答える