Java
 Computer >> コンピューター >  >> プログラミング >> Java

インターフェイスがJavaで別のインターフェイスを実装できないのはなぜですか?


インターフェイスはJavaで別のインターフェイスを実装できません。

  • Javaのインターフェースは、本質的に特別な種類のクラスです。クラスと同様に、インターフェースにはメソッドと変数が含まれています。クラスとは異なり、インターフェースは常に完全に抽象的です。
  • インターフェースは、キーワード interface を除いて、クラスと同じように定義されます。 クラスの代わりに、インターフェースで宣言される変数は静的 および最終 インターフェースで定義されているメソッドはパブリックアブストラクトです メソッド。
  • インターフェースは拡張できます 任意の数のインターフェースが1つのインターフェースを実装できません 別のインターフェース。インターフェースが実装されている場合は、そのメソッドを定義する必要があり、インターフェースにはメソッドの定義がないためです。
  • 別のインターフェースでインターフェースを実装しようとすると、Javaでコンパイル時エラーがスローされます。

interface MainInterface {
   void mainMethod();
}
interface SubInterface extends MainInterface { // If we put implements keyword in place of extends,                                               // compiler throws an error.
   void subMethod();
}
class MainClass implements MainInterface {
   public void mainMethod() {
      System.out.println("Main Interface Method");
   }
   public void subMethod() {
      System.out.println("Sub Interface Method");
   }
}
public class Test {
   public static void main(String args[]) {
      MainClass main = new MainClass();
      main.mainMethod();
      main.subMethod();
   }
}

出力

Main Interface Method
Sub Interface Method

  1. Javaのインターフェース

    インターフェースはJavaの参照型です。クラスに似ています。これは、抽象的なメソッドのコレクションです。クラスはインターフェースを実装し、それによってインターフェースの抽象メソッドを継承します。 インターフェイスには、抽象メソッドに加えて、定数、デフォルトメソッド、静的メソッド、およびネストされた型も含まれる場合があります。メソッド本体は、デフォルトのメソッドと静的メソッドにのみ存在します。 インターフェイスの作成は、クラスの作成に似ています。ただし、クラスはオブジェクトの属性と動作を記述します。また、インターフェースには、クラスが実装する動作が含まれています。 インターフェイスを実装す

  2. コンストラクターがJavaでfinalになれない理由

    finalキーワードは、メソッドがオーバーライドされるのを防ぎます。コンストラクターをオーバーライドすることはできません。Javaではコンストラクターをfinalとしてマークすることはできません。