私はほとんどジュニアレベルのプログラマーであり、これまでの経験でポリモーフィズムを使用するという要件にまだ遭遇していません。
ポリモーフィズムについての私の基本的な理解は、さまざまな異なるタイプのオブジェクトを処理する能力を必要とするものを作成することです。
いつ、なぜこれに遭遇するのかについて、誰かがまともな例を挙げてくれるのではないかと思っています。
私の質問がばかげているように見える場合は申し訳ありませんが、私はただの学習者です。
私はほとんどジュニアレベルのプログラマーであり、これまでの経験でポリモーフィズムを使用するという要件にまだ遭遇していません。
ポリモーフィズムについての私の基本的な理解は、さまざまな異なるタイプのオブジェクトを処理する能力を必要とするものを作成することです。
いつ、なぜこれに遭遇するのかについて、誰かがまともな例を挙げてくれるのではないかと思っています。
私の質問がばかげているように見える場合は申し訳ありませんが、私はただの学習者です。
ポリモーフィズムは、共通のコントラクトがある場合に役立ちますが、動作はオブジェクトごとに異なります。たとえば、至る所にある「仕事」を考えてみましょう。あなたは次のようなインターフェースを持っているかもしれません:
public interface IJob {
void Execute(JobContext context);
}
次に、DataPollingJob、MaintenanceJob、EmailJob、BalanceJobなど、このコントラクトに準拠するさまざまなジョブを実装します。ジョブを実行しているものは、実装が何を実行するか、どのように実行するかを知る必要はありませんが、それは知っています。コンテキストを使用して呼び出しExecute
、そのジョブにその機能を実行させることができます。
ポリモーフィズムが役立つもう1つの一般的なシナリオは、メッセージングです。さまざまな種類のメッセージがある場合がありますが、それらはすべて、メッセージングインフラストラクチャが理解する基本的な契約に準拠しています。