Dart 程式設計中的超類建構函式


子類可以繼承超類的函式和變數,但不能繼承超類建構函式。只有藉助 super() 建構函式才能呼叫超類建構函式。

 super() 建構函式允許子類建構函式明確呼叫超類的無引數建構函式和帶引數的建構函式。

語法

Subclassconstructor():super(){
}

不過,甚至不需要使用 супер()關鍵字,因為編譯器會自動或隱式地為我們執行相同的操作。

當透過使用 new 關鍵字建立新類物件時,它會呼叫子類建構函式,子類建構函式會隱式地呼叫父類的預設建構函式。

讓我們使用一個示例,其中我們有一個父類(或超類)和一個子類,這兩個類都有兩個建構函式,當我們為子類建立物件時,父類內部的建構函式也會隱式地被呼叫。

示例

考慮下面所示的示例 −

 演示

class SuperClass {
   SuperClass(){
      print("Constructor of Parent Class");
   }
}

class SubClass extends SuperClass {
   SubClass(){
      print("Constructor of Sub Class");
   }

   void display(){
      print("Inside Sub Class!!");
   }
}

void main(){
   SubClass obj= new SubClass();
   obj.display(); // invoking subclass method
}

輸出

Constructor of Parent Class
Constructor of Sub Class
Inside Sub Class!!

更新於:2021 年 5 月 24 日

612 次瀏覽

職業生涯開跑

透過完成課程獲得認證

立即開始
廣告
© . All rights reserved.