2017-04-18 8 views
-1

私は3つの子クラスで拡張されているクラスParentを持っていますが、FieldOneはChildOneとChildTwoでは共通ですが、ChildThreeではありません.Parentを使用してFieldOneにアクセスできるようにします。正しいデザインは何ですか?OOデザインの属性uncomm

+0

は、現在のソリューションの例と達成したいことを示しています。 –

+1

あなたのデザインに欠陥があります。属性を継承したくない場合は、そのクラスを拡張しないでください –

+0

例:従業員クラスは、フルタイムの従業員、ベンダー、請負業者によって拡張されています。ベンダと請負業者は、契約が期限切れになったかどうかを示すisContractExpiredブール値を持ちます。契約が切れた従業員のリストが必要です。 – lerner

答えて

0

継承は1クラスが別の属性とメソッドをとり、それががある関係と呼ばれるものを表現するために使用しますするプロセスです。

派生元のスーパークラスに、サブクラスで不要な属性がある場合、継承は問題の解決策ではありません。 明らかに不要な場合は、継承を強制しないでください。

関連する問題