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

Javaのインターフェースは複数のインターフェースを拡張できますか?


Javaのインターフェースはクラスに似ていますが、finalで静的な抽象メソッドとフィールドのみが含まれています。クラスと同様に、以下に示すように、extendsキーワードを使用して1つのインターフェースを別のインターフェースから拡張できます。

interface ArithmeticCalculations {
   public abstract int addition(int a, int b);
   public abstract int subtraction(int a, int b);
}
interface MathCalculations extends ArithmeticCalculations {
   public abstract double squareRoot(int a);
   public abstract double powerOf(int a, int b);
}

同様に、コンマ(、)を使用してインターフェイスを-

として区切ることにより、extendsキーワードを使用してインターフェイスから複数のインターフェイスを拡張できます。
interface MyInterface extends ArithmeticCalculations, MathCalculations {

以下は、単一のインターフェースから複数のインターフェースを拡張する方法を示すJavaプログラムです。

import java.util.Scanner;
interface ArithmeticCalculations {
   public abstract int addition(int a, int b);
   public abstract int subtraction(int a, int b);
}
interface MathCalculations {
   public abstract double squareRoot(int a);
   public abstract double powerOf(int a, int b);
}
interface MyInterface extends MathCalculations, ArithmeticCalculations {
   public void displayResults();
}
public class ExtendingInterfaceExample implements MyInterface {
   public int addition(int a, int b) {
      return a+b;
   }
   public int subtraction(int a, int b) {
      return a-b;
   }
   public double squareRoot(int a) {
      return Math.sqrt(a);
   }
   public double powerOf(int a, int b) {
      return Math.pow(a, b);
   }
   public void displayResults() {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter the value of a: ");
      int a = sc.nextInt();
      System.out.println("Enter the value of b: ");
      int b = sc.nextInt();
      ExtendingInterfaceExample obj = new ExtendingInterfaceExample();
      System.out.println("Result of addition: "+obj.addition(a, b));
      System.out.println("Result of subtraction: "+obj.subtraction(a, b));
      System.out.println("Square root of "+a+" is: "+obj.squareRoot(a));
      System.out.println(a+"^"+b+" value is: "+obj.powerOf(a, b));
   }
   public static void main(String args[]) {
      new ExtendingInterfaceExample().displayResults();
   }
}

出力

Enter the value of a:
4
Enter the value of b:
3
Result of addition: 7
Result of subtraction: 1
Square root of 4 is: 2.0
4^3 value is: 64.0

  1. 列挙型はJavaの任意のクラスを拡張できますか?

    Javaの列挙(enum)は、定数値のセットを格納するデータ型です。列挙型を使用して、1週間の日数、1年の月数などの固定値を格納できます。 キーワードenumの後に列挙型の名前を-として使用して、列挙型を定義できます。 enum Days {    SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY } 配列と同様に、列挙型の要素/定数は、上記の例では0から始まる番号を使用して識別されます。日は、次の図に示すように番号を使用して識別されます- 列挙型はクラスに似ており、変数、メソッド、コン

  2. JavaでのFocusListenerインターフェースの重要性は何ですか?

    FocusListener フォーカスイベントは、コンポーネントがキーボードフォーカスを獲得または喪失するたびに生成されます。 。 フォーカスイベントを表すオブジェクトは、 FocusEventから作成されます クラス。 FocusEventに対応するリスナーインターフェイス クラスはFocusListener インターフェース。 FocusEventの各リスナー FocusListenerを実装できます インターフェイス。 FocusListener インターフェイスには2つのメソッドが含まれていますfocusGained(): リッスンされたコンポーネントがフォーカスを取