インターフェイスは次のように定義されます:
[可见度] interface 接口名称 [extends 其他的接口名] { // 声明变量 // 抽象方法}
インターフェイスの本体には抽象メソッドが含まれていますが、インターフェイス内のすべてのメソッドが (定義により) ) are これは抽象メソッドであるため、インターフェイスに abstract キーワードは必要ありません。インターフェイスは外部動作のコレクションを表すため、インターフェイス内のメソッドはすべてパブリックです。
例:
public interface Predator { boolean chasePrey(Prey p); void eatPrey(Prey p); }
インターフェイス内のメンバーはすべて静的 (static
)、final
、およびパブリック (public##) です。 #) 、逆に、それらは任意のクラスまたはインターフェイスの型になることができます。
インターフェイスの実装:
public class Lion implements Predator { public boolean chasePrey(Prey p) { // programming to chase prey p (specifically for a lion) } public void eatPrey (Prey p) { // programming to eat prey p (specifically for a lion) } }
説明:
クラスがインターフェイスを実装しているが、インターフェイスのすべてのメソッドを実装していない場合は、そのクラスを抽象 (抽象クラス) としてマークする必要があります。抽象クラスのサブクラスは、未完成のメソッドを実装する必要があります。サブクラスがインターフェイスのすべてのメソッドを実装していない場合でも、サブクラスを抽象としてマークする必要があります。 インターフェイスは通常、Java プログラミング言語でコールバック関数に使用されます。 Java ではメソッドをパラメータとして渡すことができないため、解決策の 1 つは、インターフェイスを定義し、このインターフェイスをメソッドのパラメータとして使用し、オブジェクトのメソッド シグネチャを使用することです。サブインターフェイス
インターフェイスは、上で説明した方法を使用して、いくつかの異なるインターフェイスに拡張できます。たとえば、次のとおりです。public interface VenomousPredator extends Predator, Venomous { //介面主體 }
Predator と
Venomous は
kill(Prey prey) などの同じメソッドを定義または継承できます。 、クラスが
VenomousPredator を実装すると、これら 2 つのメソッドが同時に実装されます。
以上がJavaでインターフェースを作成して実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。