平成22年度 春期 午前 問47
ソフトウェア開発管理技術
オブジェクト指向におけるクラス間の関係のうち,適切なものはどれか。
- アクラス間の関連は,二つのクラス間でだけ定義できる。
- イサブクラスではスーパクラスの操作を再定義することができる。
- ウサブクラスのインスタンスが,スーパクラスで定義されている操作を実行するときは,スーパクラスのインスタンスに操作を依頼する。
- エ二つのクラスに集約の関係があるときには,集約オブジェクトは部品オブジェクトの属性と操作を共有する。
答えと解説を見る
✓ これが正解イサブクラスではスーパクラスの操作を再定義することができる。
解説
受け継いだ操作を下位のクラスで定義し直せます。
継承では、下位のクラスが上位のクラスの属性と操作をそのまま受け取ります。受け取った操作は、そのまま使うだけでなく、下位のクラスの側で中身を書き直し、自分に合った振る舞いへ置き換えることが認められています。同じ呼び出しに対して、どのクラスから作られたインスタンスかによって実際に動く中身が変わるのは、この書き直しが許されているからです。判定の軸は、述べられている内容がクラス間の関係として実際に許される振る舞いかどうかです。サブクラスではスーパクラスの操作を再定義することができるという記述が、その軸に合いました。
ほかの選択肢はなぜ違うのか
- アクラス間の関連は,二つのクラス間でだけ定…:関連を結べる相手は二つのクラスの間だけだと述べています。三つ以上のクラスが同時に加わる関連も表現できるので、結べる範囲をせまく決めつけた言い方になっていました。
- ウサブクラスのインスタンスが,スーパクラス…:下位から作られた実体が、上位から作られた実体へ処理を頼みに行くと述べています。引き継いだ操作は下位の実体自身が備えており、上位の実体を別に用意して依頼する形ではありません。
- エ二つのクラスに集約の関係があるときには,…:集約の関係にある側が、部品の側の属性と操作を共有すると述べています。集約は全体と部分の組み立てを示す結び付きであり、受け取って自分のものにする継承とは種類が違いました。
出典:平成22年度 春期 基本情報技術者試験 午前 問47
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)