ネットワークスペシャリスト 2010年 午前2 問24
問題文
オブジェクト指向におけるオブジェクト間の代表的な関係には、is-aとpart-ofの二つがある。表に示すオブジェクト間の関係の組合せのうち、適切なものはどれか。

選択肢
ア:
イ:
ウ:(正解)
エ:
オブジェクト間の関係の組合せ問題【午前2 解説】
要点まとめ
- 結論:オブジェクト指向の関係は「is-a」が継承、「part-of」が集約やコンポジションを表し、正解はウの組合せです。
- 根拠:「タイヤと自動車」は部品関係で「part-of」、「人間と動物」は「人間は動物の一種」なので「is-a」、「辞書と書物」も「辞書は書物の一種」で「is-a」となります。
- 差がつくポイントは、is-aとpart-ofの意味を正確に理解し、具体例に当てはめて判断できるかどうかです。
正解の理由
- 「タイヤと自動車」は「自動車の一部」であり、部品関係を示す「part-of」が適切です。
- 「人間と動物」は「人間は動物の一種」であり、継承関係を示す「is-a」が正しいです。
- 「辞書と書物」も「辞書は書物の一種」であり、こちらも「is-a」が適切です。
- 以上より、ウの組合せが正解となります。
よくある誤解
- 「タイヤと自動車」を「is-a」と誤認しがちですが、これは継承関係ではなく部品関係です。
- 「人間と動物」を「part-of」と誤解することも多いですが、これは分類上の継承関係です。
解法ステップ
- is-a関係は「〜は〜の一種」で継承や分類を示すことを確認する。
- part-of関係は「〜は〜の一部」で部品や構成要素の関係を示すことを理解する。
- 各ペアの関係性を具体的に考え、どちらの関係に該当するか判断する。
- 選択肢の組合せと照らし合わせて正しいものを選ぶ。
選択肢別の誤答解説
- ア:タイヤと自動車を「is-a」としているが、部品関係なので誤り。
- イ:辞書と書物を「part-of」としているが、辞書は書物の一種であり誤り。
- ウ:正解。タイヤと自動車はpart-of、人間と動物はis-a、辞書と書物はis-a。
- エ:辞書と書物を「part-of」としている点が誤り。
補足コラム
オブジェクト指向設計では「is-a」関係はクラスの継承を表し、コード上でサブクラスがスーパークラスの性質を受け継ぎます。一方「part-of」関係はオブジェクトの集約やコンポジションを示し、部品や構成要素としての関係を表現します。これらの理解はUMLのクラス図や設計パターンの理解にも役立ちます。
FAQ
Q: is-aとpart-ofの違いは何ですか?
A: is-aは「〜は〜の一種」で継承関係、part-ofは「〜は〜の一部」で部品や構成要素の関係を示します。
A: is-aは「〜は〜の一種」で継承関係、part-ofは「〜は〜の一部」で部品や構成要素の関係を示します。
Q: 人間と動物の関係はなぜis-aですか?
A: 人間は動物の一種であり、分類上の継承関係にあたるためis-aが適切です。
A: 人間は動物の一種であり、分類上の継承関係にあたるためis-aが適切です。
関連キーワード: オブジェクト指向、is-a関係、part-of関係、継承、集約、コンポジション、UML, クラス図

\ せっかくなら /
ネットワークスペシャリストを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

