2011-07-22 3 views
1

私はトップクラスを持っている、それは車と呼ぶことができます。私はインターフェイスを持っているので、それをITyreと呼ぶことができます。次に、ITyreを実装する2つのクラスがあります。グッドイヤーとブリヂストンと呼ぶことができます。UMLインターフェイスを集約関係の一部にすることはできますか?

私は、インタフェースYyreとCar(UMLの観点から、特定の言語ではない)との間の構成の関連付けを許可しましたか?

答えて

1

あなたが意図した場合は、

public class Car 
{ 
    ITyre something; 
} 

はい、できます。あなたがこのようにすれば、実際には良いことになるでしょう。あなたの車は特定の具体的な実装に依存しないように。ここに実装することで、タイヤを組み立てた人に関係なく、タイヤ(DIまたは工場)を柔軟に交換できます。

+0

小さな追加:オブジェクトの所有権を定義するので、構成が少し混乱します。当然のことながら、合成はオブジェクトが大きなオブジェクトの一部であることを意味します。インタフェースの場合には、インタフェースは大きなオブジェクトを含む部分の一部です。しかし、これはまだUMLの意味での構成です。 'Tyre'オブジェクトは、' Car'オブジェクトを所有していなければ存在してはいけません。直接包含かインタフェースかにかかわらず問題はありません。 – SomeWittyUsername

関連する問題