Can an interface in Java extend multiple interfaces?

JavaObject Oriented ProgrammingProgramming

An interface in Java is similar to class but, it contains only abstract methods and fields which are final and static. Just like classes you can extend one interface from another using the extends keyword as shown below:

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);
}

In the same way you can extend multiple interfaces from an interface using the extends keyword, by separating the interfaces using comma (,) as −

interface MyInterface extends ArithmeticCalculations, MathCalculations {

Example

Following is the Java program demonstrating, how to extend multiple interfaces from a single interface.

Live Demo

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();
   }
}

Output

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
raja
Published on 15-Oct-2019 07:24:28
Advertisements