Java의 인터페이스는 클래스와 유사하지만 최종적이고 정적인 추상 메서드와 필드만 포함합니다. 클래스와 마찬가지로 다음과 같이 extends 키워드를 사용하여 한 인터페이스를 다른 인터페이스에서 확장할 수 있습니다.
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