我們可以在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 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告