オブジェクト指向におけるメソッドの再定義(オーバーライド)

オブジェクト指向において,サブクラス(派生クラス)はスーパークラス(基底クラス)の属性や操作を継承します。その際,スーパークラスで定義された操作(メソッド)の具体的な振る舞いをサブクラスで上書きして定義することを「操作の再定義(オーバーライド:override)」と呼びます。 オーバーライドを利用することで,同一のメッセージ送信に対して各オブジェクトがそれぞれ固有の振る舞いを行う多態性(ポリモーフィズム)を実現できます。 したがって,正解はイとなります。 各選択肢の解説は以下のとおりです。 クラス間の関連(Association)は,2つのクラス間の関連(2項関連)だけでなく,3つ以上のクラスが結びつく「n項関連」や,同一クラス内のインスタンス同士の関連(再帰的関連)も定義できます。 サブクラスのインスタンスは継承によってスーパークラスの操作を自分自身の操作として保持しているため,自分自身の操作として実行します。スーパークラスのインスタンスへ処理を依頼(委譲)するわけではありません。 集約(Aggregation)は「全体と部分(has-a 関係)」を表すモデル化であり,属性や操作を共有・引き継ぐ関係は「汎化・特化(継承:is-a 関係)」です。

オブジェクト指向におけるクラス間の関係のうち,適切なものはどれか。

出典令和6年度 春期 高度情報処理技術者試験 午前Ⅰ
ア
クラス間の関連は,二つのクラス間だけで定義できる。
イ
サブクラスではスーパークラスの操作を再定義することができる。
ウ
サブクラスのインスタンスが,スーパークラスで定義されている操作を実行するときは,スーパークラスのインスタンスに操作を依頼する。
エ
二つのクラスに集約の関係があるときには,集約オブジェクトは部分となるオブジェクトと,属性及び操作を共有する。