在 Java 中,我們能否為抽象類建立物件?


沒有方法體的方法被稱為抽象方法。它只包含方法簽名和一個分號,以及在其前面有一個 abstract 關鍵字。

public abstract myMethod();

要使用抽象方法,您需要透過擴充套件其類來繼承它,併為其提供實現。

包含 0 個或多個抽象方法的類稱為**抽象類**。如果它至少包含一個抽象方法,則必須將其宣告為抽象的。

例項化抽象類

一旦一個類是抽象的,它就表示它可能包含不完整的方法,因此您無法建立抽象類的物件。

如果您嘗試例項化抽象類,則會生成一個編譯時錯誤,提示“class_name 是抽象的;無法例項化”。

示例

在下面的 Java 示例中,我們有一個抽象類 MyClass,它包含一個名為 display 的具體方法。我們正在嘗試使用 new 關鍵字例項化此類。

abstract class MyClass {
   public abstract void display() {
      System.out.println("This is a method of abstract class");
   }
   public static void main(String args[]) {
      new MyClass();
   }
}

編譯時錯誤

編譯此類時會生成編譯時錯誤,如下所示:

MyClass.java:6: error: MyClass is abstract; cannot be instantiated
   new MyClass();
^
1 error

更新於: 2020-06-29

1K+ 次瀏覽

啟動您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.