インターフェイスインターフェイスポリモーフィズムを実現させるにはいくつかの方法があります。ここでは、インターフェイスについてみてみましょう。インターフェイスは、抽象メソッドや抽象プロパティなどで構成されます。インターフェイスは「interface」キーワードを使って定義します。クラス名{抽象メソッド定義...}インターフェイスはインスタンスを生成できません。別のクラスで実装し、抽象メソッド等をオーバーライドして利用することができるようになります。実装はクラスの継承と違い、カンマ区切りで複数指定することができます。ファイル次のようにファイルを作成してください。プログラムインターフェイスを作成しましょう。今回はドリップを表すインターフェイスを作成します。このインターフェイスは、主に飲み物に実装させる予定です。実装したクラスでは飲み物の注ぎ方を定義させます。解説2、3行目で、抽象メソッドを宣言しています。メソッドの仕様は決まっているので、このメソッドを使用するにはオーバーライドして処理を実装する必要があります。ファイル次のようにファイルを作成してください。プログラム次に、ドリップインターフェイスを実装したコーヒークラスを作成しましょう。解説6~8行目では、IDripインターフェイスのdripメソッドをオーバーライドしています。このメソッドはフィールドに設定されている飲み物を返します。今回はコーヒーが注がれるイメージとして文字列を返しています。11~13行目では、IDripインターフェイスのdripWithMilkメソッドをオーバーライドしています。このメソッドはミルクとコーヒーを返すことでミルクコーヒーを注ぎます。ファイル次のようにファイルを作成してください。プログラムでは次にCoffeeクラスを利用するプログラムを作成しましょう。次のように記述してください。解説4行目では、コーヒーオブジェクトを生成しています。7行目と10行目でオーバーライドしたメソッドを呼び出しています。実行結果Drip:コーヒーDripWithMilk:ミルクコーヒー(微糖)今回のようにインターフェイスを実装したオブジェクトは1つだけ利用してもあまり意味がありません。複数のオブジェクトで実装させることで効果が出てきます。次の節でその効果を確認してみましょう。