ポリモーフィズム(多態性)
Polymorphism
ぽりもーふぃずむ
同じインタフェースやメソッド呼び出しに対して、オブジェクトの実際の型に応じて異なる振る舞いを実現する仕組み。オーバーライドやインタフェース実装により実現し、条件分岐の削減と拡張性の向上に貢献する。
Related
他の資格での定義
同じ呼出しに対して、オブジェクトの種類ごとに異なる動作をさせられる性質。ポリモーフィズムともいう。呼出し側は相手の種類を意識せずに済み、種類が増えても呼出し側を変更しなくてよい。
同じメッセージ(メソッドの呼出し)を送っても、受け取ったオブジェクトのクラスによって異なる動作をする性質。ポリモーフィズムともいう。サブクラスがスーパークラスのメソッドを再定義(オーバーライド)することで実現し、呼出し側は相手のクラスを意識せずに済むので、新しいサブクラスを追加しても呼出し側を変更しなくてよい。
同じインタフェースやメソッド呼び出しに対して、オブジェクトの実際の型に応じて異なる振る舞いを実現する仕組み。オーバーライドやインタフェース実装により実現し、条件分岐の削減と拡張性の向上に貢献する。
Past Exams
過去問での出題
過去問で 7 回出題(基本情報技術者試験 4・システムアーキテクト試験 2・応用情報技術者試験 1)
- 令和7年度 基本情報技術者試験 科目A 公開問題 問12正解の選択肢(IPA の PDF を新しいタブで開きます)
- 平成30年度 春期 基本情報技術者試験 午前 問46選択肢(IPA の PDF を新しいタブで開きます)
- 平成29年度 秋期 基本情報技術者試験 午前 問7(IPA の PDF を新しいタブで開きます)
- 平成26年度 秋期 基本情報技術者試験 午前 問47(IPA の PDF を新しいタブで開きます)
- 平成24年度 秋期 システムアーキテクト試験 午前Ⅱ 問6正解の選択肢(IPA の PDF を新しいタブで開きます)
- 平成22年度 秋期 システムアーキテクト試験 午前Ⅱ 問6選択肢(IPA の PDF を新しいタブで開きます)
- 平成21年度 春期 応用情報技術者試験 午前 問46正解の選択肢(IPA の PDF を新しいタブで開きます)
出典: 独立行政法人情報処理推進機構(IPA)の過去問題。問題文は IPA のサイトの PDF で確認できます。「選択肢」は、問題文ではなく選択肢に出たものです。用語名で照合しているため、関係の薄い問題が含まれることがあります。
Related
関連キーワードの用語
オブジェクト指向のソフトウェア開発において、システムの構造や振る舞いを視覚的に表現するための標準的なモデリング言語。クラス図、ユースケース図、シーケンス図、アクティビティ図など複数の図法を持ち、システム構成要素の関連の表記に用いられる。
クラスが実装すべきメソッドの仕様(シグネチャ)を定義した型。実装を持たず、複数のインタフェースを実装することで多重継承の問題を回避しつつ多態性を実現する。依存性逆転の原則の実現手段として重要。
オブジェクト指向設計の5つの基本原則。単一責任の原則(S)、開放閉鎖の原則(O)、リスコフの置換原則(L)、インタフェース分離の原則(I)、依存性逆転の原則(D)からなる。保守性や拡張性の高い設計を実現する指針。
オブジェクト指向言語で、再利用できるクラスをまとめて提供するライブラリ。利用者はクラスをそのまま使うか、継承して機能を拡張して使う。処理の流れは利用者のプログラムが制御する点で、骨格の側が利用者のコードを呼び出すフレームワークと異なる。
ログの出力、トランザクションの管理、セキュリティの検査のように、多くのモジュールにまたがって現れる処理(横断的関心事)を、アスペクトという単位に分けて記述し、指定した箇所に自動的に組み込むプログラミングの方式。本来の処理と横断的な処理を分けて書けるので、同じ処理の重複が減り、保守しやすくなる。
複数のオブジェクトをまとめて格納し、追加、削除、検索や、順に取り出す処理(反復)を行えるようにしたオブジェクト。順序を持つリスト、重複を許さないセット、キーと値を組にして持つマップなどの種類があり、多くのオブジェクト指向言語でクラスライブラリとして提供される。多重度が複数の関連を実装するときに使う。
