次のUMLによるクラス図はデザインパターンのコンポジットパターンを応用した
会社の管理構成を示す。ここで 社員 は抽象クラスとする。 これをもとに作成した
オブジェクト図(インスタンス図)として、最も適切なものはどれか。
コンポジットパターンはフォルダー(ディレクトリー)とファイル、容器と中身のような、
再帰的な構造を表すことができる。
管理者をフォルダー、平社員をファイルとして考えると、容易に解ける。
@Aは社員という抽象クラスが表現されており、適切ではない。
Bは平社員の下に平社員がいるので、間違い。
C正しい。 c:管理者が平社員であっても正解。
Dはb:管理者とd:管理者の上下関係がおかしい。
なお、平社員はLeafクラス、管理者はCompositeクラスで
社員はLeafクラスとCompositeクラスの共通インターフェースを
持つComponentクラスである。
EXCEL VBAのご相談なら ファーストマクロ へ