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


不,我们无法从另一个接口实现一个接口,你可以使用 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 关键字,并将抛出编译时错误,“期望‘{’” 。

示例

在以下 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 编译相同的程序,它会给你一个编译时错误,提示“应使用 extends 关键字,而不是 implements 关键字”。

更新于: 2020 年 6 月 29 日

355 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始
广告
© . All rights reserved.