is-a 関係がある場合は継承を使用し、has-a 関係がある場合は構成を使用するルールを知っていますが、2 つの相互に排他的/相互に置き換えられるか、または両方を使用する必要がある場合がありますか?同じクラス?
私はたくさんグーグルで検索しましたが、両方ではなく、それぞれをいつ使用するかを説明する記事しか見つかりませんでした.
ありがとう
is-a 関係がある場合は継承を使用し、has-a 関係がある場合は構成を使用するルールを知っていますが、2 つの相互に排他的/相互に置き換えられるか、または両方を使用する必要がある場合がありますか?同じクラス?
私はたくさんグーグルで検索しましたが、両方ではなく、それぞれをいつ使用するかを説明する記事しか見つかりませんでした.
ありがとう
Decorator
pattern is a classic example where the decorating class is composed of an instance to the decorated object of the same class and extends/implements the same class.
それらは相互に排他的ではありません。例:Boat
とSailboat
. Sailboat
is-aBoat
ですが、Sail
他Boat
の s が持つ場合と持たない場合がある -a があります。