ホーム > システムアーキテクト試験 > 2013年
システムアーキテクト試験 2013年 午前2 問01
UMLを使って図のクラスPを定義した。このクラスの操作のうち、公開可視性(public)をもつものはどれか

イ:操作A(正解)
ウ:操作B
エ:操作C
ア:全ての操作
解説
UMLを使って図のクラスPを定義した。このクラスの操作のうち、公開可視性(public)をもつものはどれか【午前2 解説】
要点まとめ
- 結論:公開可視性(public)を持つ操作は「+」記号で示され、図のクラスPでは「操作A」が該当します。
- 根拠:UMLの可視性記号は「+」がpublic、「−」がprivate、「#」がprotectedを表し、操作名の前に記号が付いています。
- 差がつくポイント:可視性記号の意味を正確に理解し、操作名と記号の対応を見落とさないことが重要です。
正解の理由
クラス図における操作の可視性は記号で表されます。
- 「+」はpublic(公開)で、外部からアクセス可能な操作を示します。
- 「−」はprivate(非公開)で、クラス内部のみで使用されます。
- 「#」はprotected(保護)で、サブクラスからアクセス可能です。
図のクラスPでは「+ 操作A」となっているため、公開可視性を持つ操作は「操作A」です。よって正解はイです。
よくある誤解
「−」や「#」の操作も公開されていると誤解しやすいですが、これらはそれぞれprivateやprotectedであり外部からはアクセスできません。
解法ステップ
- UMLクラス図の可視性記号の意味を確認する。
- 図の操作名の前にある記号を読み取る。
- 「+」がpublicであることを確認し、該当する操作を特定する。
- 他の記号はpublicではないため除外する。
- 正しい操作名を選択肢から選ぶ。
選択肢別の誤答解説
- ア: 全ての操作が公開とは限らず、privateやprotectedも含まれているため誤り。
- イ: 操作Aは「+」でpublicを示しており正解。
- ウ: 操作Bは「−」でprivateのため公開ではない。
- エ: 操作Cは「#」でprotectedのため公開ではない。
補足コラム
UMLの可視性はクラス設計の基本であり、アクセス制御を明確にするために重要です。publicは外部から自由に呼び出せる操作、privateは内部専用、protectedは継承関係にあるクラスからアクセス可能と覚えましょう。
FAQ
Q: UMLの可視性記号は他にどんなものがありますか?
A: 「+」がpublic、「−」がprivate、「#」がprotected、「~」がpackage(同一パッケージ内)を示します。
A: 「+」がpublic、「−」がprivate、「#」がprotected、「~」がpackage(同一パッケージ内)を示します。
Q: protectedの操作はどこからアクセス可能ですか?
A: 同じクラスとそのサブクラスからアクセス可能ですが、外部からはアクセスできません。
A: 同じクラスとそのサブクラスからアクセス可能ですが、外部からはアクセスできません。
関連キーワード: UML, クラス図, 可視性, public, private, protected, 操作, アクセス制御