abstract base class
他のクラス X から継承し ているA があるとします。
クラス A オーバーライド メソッドfoo1
。
クラスである他のいくつかのクラスA1、A2、A3がありconcrete
ます。
すべての具象クラスは method を継承しfoo1
ます。
メソッドfoo1
は、すべての具体的なクラスに適しているはずの一般的なアルゴリズムのようなものです。
アルゴリズムの1つの例外がif条件があるため、「ほぼ」です。一部のクラスでfoo2
は、の開始時に他のメソッドを起動する必要があるのはA1、A3だけですfoo
。
A2 の場合、起動する必要はありませんfoo2
。
問題はfoo2
、クラス A に実装すると、すべての子がこの関数も継承することです。これはあまり良い設計ではありませんか?
foo2
具体的なクラスによって実装されるインターフェイスに除外することを考えました->しかし、foo1
どの呼び出しfoo2
が基本クラスにあるのか、これは良くありません!
この問題を適切な方法で解決する方法はありますか?
ありがとうございました