必須継承クラスを定義する方法は? C#で必須継承クラスを定義する方法
答えて
あなたはabstract
(これはVB.NET Must Inherit
に類似したC#です)としてクラスをマークします。
これにより、インスタンスを直接インスタンス化することはできません。リンクMSDNの記事から
:
abstract修飾子が変更されているものが見つからないか、不完全な実装を持っていることを示しています。抽象修飾子は、クラス、メソッド、プロパティ、インデクサ、およびイベントで使用できます。 クラス宣言で抽象修飾子を使用すると、あるクラスが他のクラスの基本クラスであることのみを示すようになります。抽象クラスとして派生したクラスは、抽象クラスとして宣言されたメンバー、または抽象クラスに含まれているメンバーを実装する必要があります。
(強調鉱山)
にも取り上げられていますが、抽象クラスとして定義すると、継承する必要があることを意味しますか? – thechmodmaster
@thechmodmaster - そうしたクラスのインスタンスを直接作成することはできません。そこから継承するクラスのインスタンスのみを作成できます。それが "継承されなければなりません"というあなたの考え方に合っていれば、わかりません。それは私のものと一致します。 – Oded
それは私に論理的に聞こえる....仕事からの質問間違い – thechmodmaster
あなたはabstract
としてクラスを定義する、またはそれに保護された専用のコンストラクタを与えることができます。 abstract
が良いです。
abstract
修飾語を使用してください。
public abstract class MyClass()
{
...
}
ということが問題だった場合は、コード内の派生または実装の可能性enforseのneednessではありません。
しかし:
あなたはそれを実装に消費者を強制的にinterface
を定義することができます。
抽象メンバーだけでabstract class
を定義して、消費者にのすべてをに上書きさせることができます。
これが役に立ちます。
はい、それは私が言いたいことです:それを継承するために必要な方法でクラスを定義する方法。このクラスが継承されることを確認します。 – thechmodmaster
あなたが継承する必要があるクラスを作成したい場合は、abstract
修飾子を付けてマークする必要があります。
public abstract MyClass
{
}
- 1. C++メタプログラミング:*必須*抽象クラスを継承
- 2. JPAで継承クラスの属性を再定義する方法
- 3. クラス内でクラスを定義する際の継承
- 4. 継承スロットのS4プロトタイプを定義する方法
- 5. Rack :: Builderから継承するクラスを定義します。
- 6. Linq to sql - 派生クラスの継承マッピングを定義する
- 7. 継承されたクラスのコピーコンストラクタの定義を禁止する
- 8. DbContextクラスから継承する方法
- 9. Gradleタスク定義の継承
- 10. Setクラスの継承const_setクラスのクラスdelcaration OR設定クラスの継承後
- 11. クラスを継承して他の場所で定義されたクラスにMVCの必須属性を追加できますか?
- 12. Ruby on Rails:クラス継承のための未定義メソッド
- 13. C++クラスの継承、未定義の 'Class :: Constructor()'への参照
- 14. 春に必須のプロパティを定義する方法はありますか?
- 15. MultiLevel継承、クラスCはクラスAを継承できますか?
- 16. Javascriptクラス継承
- 17. クラス継承java
- 18. C++クラス継承
- 19. ジェネリック型定義が別のジェネリック型定義から継承するかどうかを確認する方法
- 20. JavaScriptサブクラス - パラメータで定義された親値を継承する方法?
- 21. ユーザタイプの定義、単一テーブルの継承(?)
- 22. 未定義の参照の継承
- 23. c# - 継承クラスのプライベートフィールドを設定
- 24. 継承クラスのdjango.utils.decorators method_decoratorを使用してメソッド定義を繰り返す必要がある理由
- 25. Gileadを使用して継承を継承するクラス
- 26. 既存の.Netクラスの継承エラーを継承する
- 27. 宣言クラスで型制約と継承を指定する方法は?
- 28. UMLクラス図でプライベート継承関係を表示する方法
- 29. STLクラスからイテレータを「継承する」方法は?
- 30. Rでパッケージやクラスを継承する方法は?
VB.Netから来ていますか?がんばろう!また、http://stackoverflow.com/questions/5189405/difference-between-mustinherit-and-abstract-class – dash