ポリモーフィズム(多態性)
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
関連キーワードの用語
データとそれに対する操作をオブジェクトとしてまとめ、オブジェクト間のメッセージパッシングによりシステムを構成する設計手法。カプセル化、継承、ポリモーフィズムを基本原理とし、再利用性と保守性の向上を目指す。
オブジェクト内部のデータ構造や実装の詳細を隠蔽し、外部からはインタフェース(公開メソッド)を通じてのみアクセスさせる仕組み。情報隠蔽により、内部実装の変更が外部に影響しない独立性を実現する。
既存のクラス(スーパークラス)の属性やメソッドを引き継いで新しいクラス(サブクラス)を定義する仕組み。コードの再利用性を高め、is-a関係を表現する。多重継承を避け、インタフェースの継承を推奨する設計が一般的。
オブジェクト指向設計の5つの基本原則。単一責任の原則(S)、開放閉鎖の原則(O)、リスコフの置換原則(L)、インタフェース分離の原則(I)、依存性逆転の原則(D)。保守性・拡張性の高い設計を実現するための指針。
直接インスタンス化できず、サブクラスで実装すべき抽象メソッドを定義するクラス。共通的な処理を定義しつつ、具体的な振る舞いをサブクラスに委ねる。インタフェースとの使い分けが設計のポイントとなる。
クラスが実装すべきメソッドの仕様(シグネチャ)を定義した型。実装を持たず、複数のインタフェースを実装することで多重継承の問題を回避しつつ多態性を実現する。依存性逆転の原則の実現手段として重要。
