abstract-class

    1

    3答えて

    私は(C言語ではabstract)と宣言されているVB.NETクラスを見ていますが、その3つのメソッドはすべてSharedと定義されていますC#のstatic)。クラスにはプロパティやフィールドはありません.3つのメソッドのみがあります。 OOの観点からは、これは意味をなさないでしょうか?あなたはそれを継承し、派生クラスのインスタンスを作成する必要があります - それMustInheritすること

    1

    2答えて

    私は、Webサービスコールで抽象クラスをパラメータとして使用しています。現在、私のようなので、基本クラスの派生クラスのXmlIncludeを含めています: [XmlInclude(typeof(DerivedClass))] public abstract class BaseClass { } しかし、私はむしろ、基本クラスに派生型のすべてが含まれていないと思います。 http://w

    2

    3答えて

    私はPHPからC#に移行しています。 PHPで継承クラスは、同じシグネチャを持つメソッドを持っていない限り、基本的に「基底クラスのメソッドは、それの世話をする、「カスケードオーバーライド」パターンを作成するために、抽象クラスを使用するのは簡単で分かりました" C#ので が、しかし、私はちょうどキーワードの様々な組み合わせを試し、約20分を費やし新しい、クラスを継承 仮想、 抽象、および ベースで

    2

    3答えて

    gccにコンパイルする抽象クラスには、COMオブジェクトにはないような仮想デストラクタは必要ないと伝える方法はありますか?たとえば、nsISupportsは欠落している仮想デストラクタについて常に不平を言います。私がこの警告を出したいと思うCOM以外のクラスを持っているかもしれないので、警告をオフにすることは役に立たないでしょう。 So __attribute __((com_interface)

    4

    2答えて

    私は以下のように定義されたクラスを持っています。 public abstract class Repository<TEntity, TDataContext> : DisposableBaseClass where TEntity : class where TDataContext : DataContext, new() {...contains Linq to SQL

    2

    3答えて

    私はフレームワークをコーディングしています(Javaでは、質問は一般的です)。ここでは、クライアントが実装するための一連のインターフェイスを提供します。フレームワーク内の関数は、実装クラスがどのように構築されるか、つまり、それらの実装に依存して他のインタフェースのインスタンスを提供することに依存することになります。例えば 私が持っているかもしれません: Interface IContributio

    2

    4答えて

    一般的なベースクラスのリフレクションには、いくつかの便利で便利な方法がありますが、ここではロックとハードな場所の間にあるケースがあります。リフレクションを使用するか、意味的に非公開でなければなりません(つまり、誰もそれらを使用できるはずはありません)。私はいくつかのコードは、ここでの順序であると仮定します public abstract class SingletonForm<TThis> : F

    2

    3答えて

    保護されたコンストラクタを持つクラスとMustInheritとマークされたクラスの違いは何ですか? (私はVB.Netでプログラミングしていますが、これはおそらくC#にも等しく適用されます)。 なぜ私はコンストラクタを共有/静的メソッドに変換したいという抽象クラスがあるからです。 (いくつかの制約を加えるために)。 共有機能でインスタンスを作成できないため、これを行うことはできません。 MustI

    162

    9答えて

    抽象クラスをテストしたいと思います。確かに、私はmanually write a mockクラスから継承することができます。 私はモックフレームワークを使用してこれを行うことができますか(私はモキトを使用しています)。どうやって? YourClass yourObject = mock(YourClass.class); を、あなたがちょうどあなたのようにテストしたいメソッドを呼び出す:あなた

    2

    2答えて

    これを行うことができるかどうかについての情報はありません。 私は抽象クラスの中にいくつかの保護されたメソッドを持っており、これらをテストしたいと考えています。 私はクラスから継承してその実装をテストしたくないです(厳密にはユニットテストではなく、VS2008では継承されたメソッドをテストできません)。 私は統合ユニットテストのコンテキスト内でこの問題を解決したいと思います...たとえば、nUnit