Dart中Super关键的解读

使用场景:

继承
Dart中非默认构造函数是不能被子类继承的,即父类的构造器不会被继承

dart中的继承:

1、子类使用extends关键词来继承父类
2、子类会继承父类里面可见的属性和方法 但是不会继承构造函数
3、子类能复写父类的方法 getter和setter

super的作用:

1、Super可以访问子类中的父类方法。如果子类和父类方法名称相同,则可以使用Super关键字区分和使用
// 将调用或调用当前类的display()方法
display(); 

// 将调用或调用父类的display()方法
super.display();
2、Super可以访问父类构造函数
// 两种语法
// 2.17版本以后
// 使用 super 关键字直接引用即可
Widget({super.key,super.XXX,...})

// 2.17版本以前
// 当在Dart中使用继承的时候,需要调用父类的构造器进行初始化,需要先列出类自身的构造方法的参数,然后再把这些参数传给父类:
Wdget({Key key,@required this.index}):super(key:key);

你可能感兴趣的:(flutterdart)