我们能在 Java 中从一个接口实现另一个接口吗?

java 8object oriented programmingprogramming

不,我们不能从一个接口实现另一个接口,你可以使用 extends 关键字将其扩展为 −

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

不过,如果你尝试使用 implements 关键字从一个接口实现另一个接口。编译器无法识别接口名称后的 implements 关键字,并会抛出编译时错误,提示"'{' expected”。

示例

在下面的 Java 程序中,我们有两个接口,即 ArithmeticCalculations 和 MathCalculations,我们正尝试从另一个接口实现一个接口。

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

编译时错误

在编译时,上述程序生成以下编译时错误 −

输出

MathCalculations.java:8: error: '{' expected
interface MathCalculations implements ArithmeticCalculations{
^
1 error

如果您使用 eclipse 编译相同的程序,它会给您一个编译时错误,提示"需要扩展关键字而不是实现"。


相关文章