我有A类:
class A{
String title;
String content;
IconData iconData;
Function onTab;
A({this.title, this.content, this.iconData, this.onTab});
}
我如何创建类B,扩展类A与其他变量如下:
class B extends A{
bool read;
B({this.read});
}
尝试使用此方法,但不起作用
let o = new B(
title: "New notification",
iconData: Icons.notifications,
content: "Lorem ipsum doro si maet 100",
read: false,
onTab: (context) => {
});
3条答案
按热度按时间mdfafbf11#
必须在子类上定义构造函数。
6jjcrrmo2#
为了适应2023年的更新,自Dart 2.17以来,我们有了超级初始化器-详细描述by Michael Thomsen here
您不再需要显式调用super。
示例:
ccgok5k53#
**你可以使用extends关键字继承或扩展一个类。这允许你在相似但不完全相同的类之间共享属性和方法。同样,它允许不同的子类型共享一个公共的运行时类型,这样静态分析就不会失败。(下面会详细介绍);经典的例子是使用不同类型的动物。