応用情報技術者試験 応用情報技術者試験 平成29年度春期 午前 問47: 汎化の適切な例はどれか。
41.84%
選択肢
- ア.ア(哺乳類を上位クラス,人・犬・猫を下位クラスとする継承関係図)
- イ.イ(自動車を上位クラス,アクセル・ブレーキ・ハンドルを下位クラスとする継承関係図)
- ウ.ウ(商品を上位クラス,受注・在庫・出荷を下位クラスとする継承関係図)
- エ.エ(取引先を上位クラス,会社名・住所・電話番号を下位クラスとする継承関係図)
正解
ア. ア(哺乳類を上位クラス,人・犬・猫を下位クラスとする継承関係図)
解説
汎化(generalization)とは,上位クラスと下位クラスが“〜は〜の一種である(is-a)”という継承関係で結ばれることをいう。すなわち下位クラスが上位クラスの一種になっていなければならない。「人は哺乳類の一種」「犬は哺乳類の一種」「猫は哺乳類の一種」がいずれも成り立つアが,正しい汎化(is-a 関係)の例であり正解である。
選択肢ごとの解説
- ア.正しい。人・犬・猫はいずれも哺乳類の一種(is-a)であり,上位クラス哺乳類との継承関係が成り立つ。これが汎化の正しい例である。
- イ.誤り。アクセル・ブレーキ・ハンドルは自動車の“一種”ではなく“部品(一部分)”である。これは全体と部分の関係(集約 has-a)であって汎化ではない。
- ウ.誤り。受注・在庫・出荷は商品の一種ではなく,商品に関わる業務(処理)である。is-a 関係が成り立たず汎化ではない。
- エ.誤り。会社名・住所・電話番号は取引先の一種ではなく,取引先が持つ属性(データ項目)である。クラスと属性の関係であり汎化ではない。
応用情報技術者試験 平成29年度春期 午前 の過去問一覧へ戻る・問47