Java 中的 super 關鍵字

Siddharth Swami 2023年10月12日 Java Java Class
Java 中的 super 關鍵字

在 Java 中,我們有一個與父類有些相關的預定義關鍵字 super。我們將在本教程中詳細討論 super() 函式。

在 Java 中,super 關鍵字充當父類物件的引用變數。它可以用來呼叫父類的方法和變數。

例如

class Teacher { // Parent class
  int grade = 90;
}

class Students extends Teacher { // subclass
  Students() {
    System.out.println("Grade " + super.grade);
  }
}

public class Main {
  public static void main(String[] args) {
    Students s = new Students();
  }
}

輸出:

Grade 90

在上面的示例中,我們使用 super 關鍵字從其子類 Students 的建構函式訪問了父類 Teacher 中的變數 grade

我們還有 super() 函式,它呼叫父類的建構函式。該函式僅用於呼叫父類的建構函式。可以使用 super() 函式呼叫引數和非引數建構函式。如果建構函式在使用 super() 函式時沒有顯式呼叫超類建構函式,則 Java 編譯器本身會呼叫超類的無引數建構函式。

請參考下面的程式碼。

class Teacher { // Parent class

  Teacher() // constructor
  {
    System.out.println("Teacher class Constructor");
  }
}
class Students extends Teacher { // subclass
  Students() {
    super();
    System.out.println("Students class Constructor");
  }
}

public class Main {
  public static void main(String[] args) {
    Students s = new Students();
  }
}

輸出:

Teacher class Constructor
Students class Constructor

我們在上面的程式碼中建立了一個父類 Teacher 和一個父類建構函式,它會列印一條訊息。然後從 Teacher 擴充套件了一個子類 Students,它有一個建構函式 Students(),它由呼叫父類建構函式的 super() 函式組成。然後我們有主類,它呼叫子類來執行程式。super() 函式呼叫父類建構函式來列印來自父類和子類的訊息。

Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe

相關文章 - Java Class