Java言語では、インターフェース内のメソッドを使用するために、インターフェースをクラスによって実装します。クラスは、クラス宣言でキーワードimplementsを使用して、そのクラスが1つ以上のインターフェイスを実装することを宣言する必要があります。複数のインターフェイスを実装する場合は、インターフェイス名をカンマで区切ります。
例えば:
classAimplementsPrintable, Addable//クラス A は Printable インターフェイスと Addable インターフェイスを実装します classDogextendsAnimalimplementsEatable, Sleepable//Animal の Dog サブクラスは Eatable インターフェイスと Sleepable インターフェイスを実装します
非抽象クラスがインターフェイスを実装する場合、そのクラスはインターフェイス内のすべてのメソッドをオーバーライドする必要があります。
注: インターフェイス内のメソッドはパブリック抽象メソッドである必要があるため、クラスがインターフェイス メソッドをオーバーライドするときは、抽象修飾子を削除するだけでなく、メソッド本体も提供する必要があり、メソッドのアクセス権は次の方法で明確に変更する必要があります。公共。
インターフェイスを実装する非抽象クラスがインターフェイスにメソッドを実装する場合、それはメソッドの特定の動作機能を与えることと同じです。ユーザーはインターフェイスをカスタマイズすることもでき、Java ソース ファイルはクラスとインターフェイスで構成できます。
クラスがインターフェイスの実装を宣言しても、インターフェイス内のすべてのメソッドをオーバーライドしない場合、そのクラスは抽象クラスである必要があります。つまり、抽象クラスはインターフェイス内のメソッドをオーバーライドすることも、インターフェイス内のメソッドを直接所有することもできます。インタフェース。
詳細:
プログラムはインターフェイス名を使用してインターフェイス内の定数にアクセスできますが、クラスがインターフェイスを実装している場合、クラスはインターフェイス内の定数をクラス本体で直接使用できます。
インターフェイスを定義するときに、キーワード インターフェイスの前に public キーワードが付いている場合、そのインターフェイスはpublic インターフェイスと呼ばれ、 public キーワードが追加されていない場合、そのパブリック インターフェイスはフレンドリー インターフェイスと呼ばれます。フレンドリーなインターフェイスはそのクラスで使用できます。インターフェイスは同じパッケージ内のクラスによって実装されます。
親クラスがインターフェイスを実装している場合、サブクラスは自然にそのインターフェイスを実装します。つまり、サブクラスはこのインターフェイスの実装を宣言するためにキーワード install を使用する必要がなくなりました。
インターフェイスは継承することもできます。つまり、キーワード extends を使用してインターフェイスが別のインターフェイスのサブインターフェイスであることを宣言できます。インターフェイス内のメソッドと定数は共通であるため、サブインターフェイスは親インターフェイスのすべてのメソッドと定数を継承します。
注: Java によって提供されるインターフェースはすべて、対応するパッケージ内にあります。 import ステートメントを使用すると、パッケージ内のクラスを導入できるだけでなく、パッケージ内のインターフェースも導入できます。
例えば:
importjava.io.*;//このとき、java.io パッケージ内のクラスが導入されるだけでなく、パッケージ内のインターフェースも導入されます