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.