ホームページ  >  記事  >  Java  >  Java 8 のデフォルトのインターフェース・メソッドと静的インターフェース・メソッドの違い

Java 8 のデフォルトのインターフェース・メソッドと静的インターフェース・メソッドの違い

王林
王林転載
2023-08-30 23:17:171212ブラウズ

Java 8中默认接口方法和静态接口方法的区别

Oracle の Javadoc によると -

デフォルトのメソッドを使用すると、ライブラリのインターフェイスに新しい機能を追加し、バイナリがこれらの古いバージョン用に作成されたコードと互換性があることを確認できます。インターフェースの互換性。

静的メソッドは、オブジェクトではなく、それが定義されているクラスに関連付けられているメソッドです。クラスの各インスタンスは静的メソッドを共有します。

インターフェイスの静的メソッドはインターフェイスの一部です。クラスはそれを実装したりオーバーライドしたりすることはできませんが、デフォルトのメソッドをオーバーライドすることはできます。

#紳士諸君。 Noボタン静的インターフェイス メソッドデフォルト メソッド 1Basic静的メソッド。インターフェイスにのみ属します。このメソッドの実装はインターフェイス自体に記述できます#2 tr>3インターフェイスのデフォルト メソッドと静的メソッドの例
public interface DefaultStaticExampleInterface {
   default void show() {
      System.out.println("In Java 8- default method - DefaultStaticExampleInterface");
   }
   static void display() {
      System.out.println("In DefaultStaticExampleInterface I");
   }
}
public class DefaultStaticExampleClass implements DefaultStaticExampleInterface {
}
public class Main {
   static void main(String args[]) {
      // Call interface static method on Interface
      DefaultStaticExampleInterface.display();
      DefaultStaticExampleClass defaultStaticExampleClass = new DefaultStaticExampleClass();
     
      // Call default method on Class
      defaultStaticExampleClass.show();
   }
}

#これはデフォルトのキーワードを持つメソッドであり、クラスはこのメソッドをオーバーライドできます

メソッド呼び出し

#静的メソッドは、クラスではなくインターフェイス クラスでのみ呼び出すことができます。

#インターフェイスまたはクラスで呼び出すことができます

メソッド名

インターフェイスと実装クラスは同じ名前の静的メソッドを持つことができ、相互に上書きされません。

#実装クラスのデフォルト メソッドをオーバーライドできます

4.

ユースケース

ユーティリティ メソッドとして使用できます

すべての実装クラスに共通の機能を提供するために使用できます

以上がJava 8 のデフォルトのインターフェース・メソッドと静的インターフェース・メソッドの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。