ds design
DS検定トップ
> ポリモーフィズムとは?(同じ呼び出しで動作が変わる仕組み)【DS検定】
まず結論
ポリモーフィズム(多態性)とは、同じインターフェース(同じ呼び出し方)で、異なるオブジェクトが異なる振る舞いをする仕組みです。
DS検定では、「オブジェクト指向の基本概念の違いを判断できるか」が問われます。
特に 継承との違いを正しく切り分けられるか がポイントです。
直感的な説明
「同じボタンを押しているのに、機械によって動きが違う」
そんなイメージです。
たとえば print() という処理があったとします。
- レポートなら → 文章を印刷する
- グラフなら → 図を描画する
- データなら → 数値を表示する
呼び方は同じ。でも中身の動きは違う。
これがポリモーフィズムです。
なぜ重要かというと、
「種類が増えても、同じ扱い方ができる」ため、
システムをシンプルに保てるからです。
定義・仕組み
ポリモーフィズムとは、
共通のメソッド名やインターフェースを持ちながら、
実際の処理内容はオブジェクトごとに異なること
を指します。
多くの場合は、
- 共通の親クラスを作る
- 子クラスで処理を上書きする(オーバーライド)
という形で実現されます。
ただし重要なのは「継承そのもの」ではなく、
同じ呼び出しで違う動作をするという性質そのものです。
DS検定ではここを区別させてきます。
どんな場面で使う?
使う場面
- データ形式が複数ある処理(CSV・JSON・画像など)
- モデルごとに予測方法が違うAIシステム
- グラフ描画の種類が複数ある可視化機能
実務では、
「種類は違うが、同じように扱いたい」
という場面で活躍します。
使うと誤解しやすい場面
単に「似た処理をまとめただけ」ではポリモーフィズムとは言いません。
同じ呼び出し方法で扱えることが条件です。
よくある誤解・混同
① 継承(インヘリタンス)との混同
DS検定では
「継承」と「ポリモーフィズム」を混同させてきます。
- 継承 → 親の性質を引き継ぐ“仕組み”
- ポリモーフィズム → 同じ呼び出しで動作が変わる“性質”
選択肢で
「親クラスの機能を引き継ぐ仕組み」と書いてあれば、それは継承です。
② エンカプセレーションとの混同
- エンカプセレーション → データと処理をまとめ、外から直接触れないようにすること
「内部を隠す」とあればエンカプセレーションです。
③ コンポジションとの混同
- コンポジション → 部品を組み合わせる設計
「〜を持つ」という関係ならコンポジションです。
まとめ(試験直前用)
- 同じ呼び出しで動作が変わる → ポリモーフィズム
- 継承は“仕組み”、ポリモーフィズムは“性質”
- 「型が違っても同じように扱える」がキーワード
- DS検定では「継承」との切り分けが最重要
迷ったら、
問われているのは“仕組み”か“性質”か?
と考えると正解に近づけます。
対応スキル項目(AI利活用スキルシート)
- AIの基礎理解
- ソフトウェアの基本概念の理解
- ★ AIを活用するために必要なIT・ソフトウェアの基礎知識を理解している
🔗 関連記事
- アクセス制御リスト(ACL)とは?ファイル権限の基本を整理【DS検定】
- 中間層で使用される活性化関数とは?(ReLU・シグモイド・ソフトマックスの違い)【DS検定】
- アジャイル開発とは?ウォーターフォール開発との違いを整理【DS検定】
- 分析アプローチ設計とは?(分析プロジェクトを成功させる設計プロセス)【DS検定】
- 必要なデータ・分析手法・可視化を適切に選択する力とは?【DS検定】