平成27年度 秋期 システムアーキテクト試験 午前Ⅱ 問2

UMLを使って図のクラスPを定義した。このクラスの操作のうち,公開可視性(public)をもつものはどれか。

クラスP
図の説明テキスト

UMLのクラス図。3つの区画に分かれた矩形で、上段のクラス名区画に「クラスP」、中段の属性区画は空、下段の操作区画に上から「+ 操作A」「- 操作B」「# 操作C」と記述されている。

解答・解説

正解: イ. 操作A

UML(統一モデリング言語) のクラス図において、属性や操作の前に付けられる記号は 可視性(アクセス制御) を表します。主な記号の意味は以下の通りです。

  • + :public(公開) — どのクラスからでもアクセス可能
  • - :private(非公開) — 定義されたクラス(自クラス)の内部からのみアクセス可能
  • # :protected(保護) — 自クラスおよびそのサブクラス(継承先)からのみアクセス可能
  • ~ :package(パッケージ) — 同一パッケージ内のクラスからのみアクセス可能

図の「クラスP」の操作区画(下段)を見ると、各操作の前に以下の記号が記述されています。

  • + 操作A
  • - 操作B
  • # 操作C

したがって、公開可視性(public)を表す + が付けられているのは 操作A であり、正解は イ です。

各選択肢の解説

  • ア(全ての操作): 操作Bは非公開(private)、操作Cは保護(protected)であるため誤りです。
  • イ(操作A): 先頭に + が付いており、公開可視性(public)をもつため 正解 です。
  • ウ(操作B): 先頭に - が付いており、非公開可視性(private)をもつため誤りです。
  • エ(操作C): 先頭に # が付いており、保護可視性(protected)をもつため誤りです。

Spineチーム