私は基本クラス(PrintProviderBase
)を持っています。それはいくつかの州(PrinterUnavailable
、NoPaper
、...)を保持します。継承の問題。どのように基本クラスの複数のインスタンスを作成するには?
それから私は、このクラスから継承:ColorPrintProvider
、BlackAndWhitePrintProvider
...
私は、基本クラスは、このような性質がある場合と仮定した。
private PrintStateEnum State { get; set; }
そして、それぞれの子クラス(異なる印刷プロバイダを)それはそれ自身の状態です(何も静的ではありませんが)。共通の機能と状態をbase class
にカプセル化できるように、base
クラスの1つのインスタンスがそれらの間で共有されているようですが、私はそれぞれの子クラスにbase class
のコピーを持つことを意味していました。
印刷プロバイダがNoPaper
状態になると、他の印刷プロバイダが不正な状態で印刷を停止します。この動作を変更するにはどうすればよいですか?
。もっとコードを投稿できますか? – Todd
私は 'MEF'の共有モードを使います。基本クラスには保護されたコンストラクタがあり、子クラスには基本クラスのコンストラクタを呼び出すプライベートコンストラクタがあります。 – Xaqron