アヒルのように振る舞えば、それはアヒルである。どういうこと?クラスの継承関係とは独立してポリモーフィズムを行う仕組みで、オブジェクトが同じ名前のメソッドを持っているかどうかでポリモーフィズムを実現する言語の仕組みことです。どうして?継承は便利ですが、問題点もあります。親クラスを後から修正すると、子クラスに影響が波及し、正しく動作しなくなることがある。継承関係にないオブジェクトを、差分プログラミングのためだけに無理やり親子関係に設計してしまい、後に整合が取れなくなる。よって、最近のプログラミング言語では、無理な継承関係を構築せずとも、ポリモーフィズムを行う仕組みが用意されています。どうすれば?ダックタイピングが実現されている言語では、あるメソッドが定義されているかどうかの判断を、実行時にオブジェクトに問い合わせることで行います。そのため、ポリモーフィズムの実現に抽象インターフェイスは必要あり