Javaインターフェイスメソッド
インターフェイスのメソッドはデフォルトで抽象的です。つまり、インターフェイスのメソッドにはメソッドシグネチャのみが含まれ、内部にはコンテンツが含まれません。例を見てみましょう-
例
interface Car{ public void carSpeed(); public void sleep(); } class Porsche implements Car{ public void carSpeed(){ System.out.println("The speed of the Porsche is too much"); } public void sleep(){ System.out.println("Sleeping for few milliseconds"); } } public class Demo{ public static void main(String[] args){ Porsche my_car = new Porsche(); my_car.carSpeed(); my_car.sleep(); } }
出力
The speed of the Porsche is too much Sleeping for few milliseconds
「Car」という名前のインターフェースは、「carSpeed」と「sleep」という名前の2つの関数で定義されています。 Npw、このインターフェースは「Porsche」という名前のクラスによって実装されています。このクラスは「carSpeed」と「sleep」を定義しますが、インターフェースはそれらを定義したばかりで、本体はありませんでした。これで、Demoという名前のクラスに、Porscheクラスのインスタンスを作成するmain関数が含まれます。このインスタンスは、「carSpeed」および「sleep」関数で呼び出されます。
-
Java8でのインターフェースの機能強化
Java 8では、インターフェースにデフォルトのメソッド実装の新しい概念が導入されています。この機能は下位互換性のために追加されているため、古いインターフェースを使用してJava8のラムダ式機能を活用できます。 たとえば、「List」または「Collection」インターフェースには「forEach」メソッド宣言がありません。したがって、このようなメソッドを追加すると、コレクションフレームワークの実装が壊れてしまいます。 Java 8ではデフォルトのメソッドが導入されているため、List / CollectionインターフェースはforEachメソッドのデフォルトの実装を持つことができ、これ
-
Javaのインターフェース
インターフェースはJavaの参照型です。クラスに似ています。これは、抽象的なメソッドのコレクションです。クラスはインターフェースを実装し、それによってインターフェースの抽象メソッドを継承します。 インターフェイスには、抽象メソッドに加えて、定数、デフォルトメソッド、静的メソッド、およびネストされた型も含まれる場合があります。メソッド本体は、デフォルトのメソッドと静的メソッドにのみ存在します。 インターフェイスの作成は、クラスの作成に似ています。ただし、クラスはオブジェクトの属性と動作を記述します。また、インターフェースには、クラスが実装する動作が含まれています。 インターフェイスを実装す