ITの基礎知識|ITパスポート・基本情報

基本情報技術者 令和7年公開問題 科目A 問12

2026.05.26

オブジェクト指向プログラミングの特徴のうち,異なるクラスのオブジェクトを同一のインタフェースで操作したときに,操作対象クラスに応じた異なる動作を可能にすることを何と呼ぶか。

  • ア 委譲
  • イ 継承
  • ウ コンポジション
  • エ 多相性

Show answer

正解: エ

解説:

オブジェクト指向の主要概念を整理します。

多相性(ポリモーフィズム,Polymorphism)は,同一のメソッド名(インタフェース)で呼び出しても,オブジェクトが属するクラスによって異なる処理が実行される特性です。例えば「動物クラス」の `鳴く()` メソッドを呼ぶと,犬なら「ワン」,猫なら「ニャー」と異なる動作をします。

その他の概念との区別を確認します。

  • ア:委譲(Delegation)とは,あるオブジェクトの処理を,内部に持つ別のオブジェクトに委ねる(処理を転送する)仕組みです。継承の代替として使われます。
  • イ:継承(Inheritance)とは,親クラス(スーパークラス)の属性やメソッドを子クラス(サブクラス)が引き継ぐ仕組みです。コードの再利用性を高めます。
  • ウ:コンポジション(Composition)とは,あるクラスのオブジェクトを別のクラスの部品として内包する関係(”has-a” 関係)です。「自動車クラスはエンジンクラスを持つ」といった関係がこれに当たります。